RTEMS-5
Annotated Report
Fri Aug 10 14:26:35 2018
4005bf1c <rtems_rfs_bitmap_close>:
int
rtems_rfs_bitmap_close (rtems_rfs_bitmap_control* control)
{
4005bf1c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
free (control->search_bits);
4005bf20: 7f fe bd d8 call 4000b680 <free>
<== NOT EXECUTED
4005bf24: d0 06 20 14 ld [ %i0 + 0x14 ], %o0
<== NOT EXECUTED
return 0;
}
4005bf28: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bf2c: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
4005bdd4 <rtems_rfs_bitmap_create_search>:
int
rtems_rfs_bitmap_create_search (rtems_rfs_bitmap_control* control)
{
4005bdd4: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
rtems_rfs_bitmap_map map;
size_t size;
rtems_rfs_bitmap_bit bit;
int rc;
rc = rtems_rfs_bitmap_load_map (control, &map);
4005bdd8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
{
4005bddc: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
rc = rtems_rfs_bitmap_load_map (control, &map);
4005bde0: 7f ff fe 7a call 4005b7c8 <rtems_rfs_bitmap_load_map>
<== NOT EXECUTED
4005bde4: 92 07 bf fc add %fp, -4, %o1
<== NOT EXECUTED
if (rc > 0)
4005bde8: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
4005bdec: 24 80 00 04 ble,a 4005bdfc <rtems_rfs_bitmap_create_search+0x28>
<== NOT EXECUTED
4005bdf0: c0 27 60 10 clr [ %i5 + 0x10 ]
<== NOT EXECUTED
bit++;
map++;
}
return 0;
}
4005bdf4: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bdf8: 81 e8 00 00 restore
<== NOT EXECUTED
*search_map = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;
4005bdfc: 82 10 3f ff mov -1, %g1
<== NOT EXECUTED
search_map = control->search_bits;
4005be00: f0 07 60 14 ld [ %i5 + 0x14 ], %i0
<== NOT EXECUTED
size = control->size;
4005be04: c6 07 60 0c ld [ %i5 + 0xc ], %g3
<== NOT EXECUTED
while (size)
4005be08: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
4005be0c: 02 80 00 31 be 4005bed0 <rtems_rfs_bitmap_create_search+0xfc>
<== NOT EXECUTED
4005be10: c2 26 00 00 st %g1, [ %i0 ]
<== NOT EXECUTED
4005be14: f8 07 bf fc ld [ %fp + -4 ], %i4
<== NOT EXECUTED
bit = 0;
4005be18: b4 10 20 00 clr %i2
<== NOT EXECUTED
available = rtems_rfs_bitmap_element_bits ();
4005be1c: 9a 10 20 20 mov 0x20, %o5
<== NOT EXECUTED
mask >>= (rtems_rfs_bitmap_element_bits () - size);
4005be20: 9e 10 3f ff mov -1, %o7
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);
4005be24: 10 80 00 10 b 4005be64 <rtems_rfs_bitmap_create_search+0x90>
<== NOT EXECUTED
4005be28: b2 10 20 01 mov 1, %i1
<== NOT EXECUTED
mask >>= (rtems_rfs_bitmap_element_bits () - size);
4005be2c: 82 23 40 03 sub %o5, %g3, %g1
<== NOT EXECUTED
available = size;
4005be30: b6 10 00 03 mov %g3, %i3
<== NOT EXECUTED
mask >>= (rtems_rfs_bitmap_element_bits () - size);
4005be34: 83 33 c0 01 srl %o7, %g1, %g1
<== NOT EXECUTED
4005be38: 84 08 80 01 and %g2, %g1, %g2
<== NOT EXECUTED
if (rtems_rfs_bitmap_match (bits, RTEMS_RFS_BITMAP_ELEMENT_SET))
4005be3c: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
4005be40: 12 80 00 10 bne 4005be80 <rtems_rfs_bitmap_create_search+0xac>
<== NOT EXECUTED
4005be44: 86 10 20 00 clr %g3
<== NOT EXECUTED
if (bit == (rtems_rfs_bitmap_element_bits () - 1))
4005be48: 80 a6 a0 1f cmp %i2, 0x1f
<== NOT EXECUTED
4005be4c: 22 80 00 1c be,a 4005bebc <rtems_rfs_bitmap_create_search+0xe8>
<== NOT EXECUTED
4005be50: de 26 20 04 st %o7, [ %i0 + 4 ]
<== NOT EXECUTED
bit++;
4005be54: b4 06 a0 01 inc %i2
<== NOT EXECUTED
while (size)
4005be58: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
4005be5c: 02 80 00 1d be 4005bed0 <rtems_rfs_bitmap_create_search+0xfc>
<== NOT EXECUTED
4005be60: b8 07 20 04 add %i4, 4, %i4
<== NOT EXECUTED
if (size < rtems_rfs_bitmap_element_bits ())
4005be64: 80 a0 e0 1f cmp %g3, 0x1f
<== NOT EXECUTED
4005be68: 08 bf ff f1 bleu 4005be2c <rtems_rfs_bitmap_create_search+0x58>
<== NOT EXECUTED
4005be6c: c4 07 00 00 ld [ %i4 ], %g2
<== NOT EXECUTED
4005be70: 86 00 ff e0 add %g3, -32, %g3
<== NOT EXECUTED
if (rtems_rfs_bitmap_match (bits, RTEMS_RFS_BITMAP_ELEMENT_SET))
4005be74: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
4005be78: 02 bf ff f4 be 4005be48 <rtems_rfs_bitmap_create_search+0x74>
<== NOT EXECUTED
4005be7c: b6 10 20 20 mov 0x20, %i3
<== NOT EXECUTED
for (b = 0; b < available; b++)
4005be80: 82 10 20 00 clr %g1
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);
4005be84: 89 2e 40 01 sll %i1, %g1, %g4
<== NOT EXECUTED
if (!rtems_rfs_bitmap_test (bits, b))
4005be88: 80 89 00 02 btst %g4, %g2
<== NOT EXECUTED
4005be8c: 02 80 00 05 be 4005bea0 <rtems_rfs_bitmap_create_search+0xcc>
<== NOT EXECUTED
4005be90: 82 00 60 01 inc %g1
<== NOT EXECUTED
control->free++;
4005be94: c8 07 60 10 ld [ %i5 + 0x10 ], %g4
<== NOT EXECUTED
4005be98: 88 01 20 01 inc %g4
<== NOT EXECUTED
4005be9c: c8 27 60 10 st %g4, [ %i5 + 0x10 ]
<== NOT EXECUTED
for (b = 0; b < available; b++)
4005bea0: 80 a6 c0 01 cmp %i3, %g1
<== NOT EXECUTED
4005bea4: 12 bf ff f9 bne 4005be88 <rtems_rfs_bitmap_create_search+0xb4>
<== NOT EXECUTED
4005bea8: 89 2e 40 01 sll %i1, %g1, %g4
<== NOT EXECUTED
if (bit == (rtems_rfs_bitmap_element_bits () - 1))
4005beac: 80 a6 a0 1f cmp %i2, 0x1f
<== NOT EXECUTED
4005beb0: 12 bf ff ea bne 4005be58 <rtems_rfs_bitmap_create_search+0x84>
<== NOT EXECUTED
4005beb4: b4 06 a0 01 inc %i2
<== NOT EXECUTED
*search_map = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;
4005beb8: de 26 20 04 st %o7, [ %i0 + 4 ]
<== NOT EXECUTED
bit = 0;
4005bebc: b4 10 20 00 clr %i2
<== NOT EXECUTED
search_map++;
4005bec0: b0 06 20 04 add %i0, 4, %i0
<== NOT EXECUTED
while (size)
4005bec4: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
4005bec8: 12 bf ff e7 bne 4005be64 <rtems_rfs_bitmap_create_search+0x90>
<== NOT EXECUTED
4005becc: b8 07 20 04 add %i4, 4, %i4
<== NOT EXECUTED
}
4005bed0: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bed4: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
4005bcd0 <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)
{
4005bcd0: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
int rc = 0;
/*
* By default we assume the allocation failed.
*/
*allocated = false;
4005bcd4: c0 2e 80 00 clrb [ %i2 ]
<== NOT EXECUTED
* 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;
4005bcd8: ba 10 00 19 mov %i1, %i5
<== NOT EXECUTED
* 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))
4005bcdc: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
4005bce0: 06 80 00 1e bl 4005bd58 <rtems_rfs_bitmap_map_alloc+0x88>
<== NOT EXECUTED
4005bce4: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
4005bce8: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
4005bcec: 80 a0 40 19 cmp %g1, %i1
<== NOT EXECUTED
4005bcf0: 08 80 00 1a bleu 4005bd58 <rtems_rfs_bitmap_map_alloc+0x88>
<== NOT EXECUTED
4005bcf4: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
/*
* Search up first so bits allocated in succession are grouped together.
*/
if (upper_seed < control->size)
{
*bit = upper_seed;
4005bcf8: f2 26 c0 00 st %i1, [ %i3 ]
<== NOT EXECUTED
rc = rtems_rfs_search_map_for_clear_bit (control, bit, allocated,
4005bcfc: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
4005bd00: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
4005bd04: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
4005bd08: 7f ff fe c4 call 4005b818 <rtems_rfs_search_map_for_clear_bit.constprop.0>
<== NOT EXECUTED
4005bd0c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
window, 1);
if ((rc > 0) || *allocated)
4005bd10: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005bd14: 14 80 00 2c bg 4005bdc4 <rtems_rfs_bitmap_map_alloc+0xf4>
<== NOT EXECUTED
4005bd18: 01 00 00 00 nop
<== NOT EXECUTED
4005bd1c: c2 0e 80 00 ldub [ %i2 ], %g1
<== NOT EXECUTED
4005bd20: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4005bd24: 12 80 00 28 bne 4005bdc4 <rtems_rfs_bitmap_map_alloc+0xf4>
<== NOT EXECUTED
4005bd28: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
break;
}
if (lower_seed >= 0)
4005bd2c: 36 80 00 14 bge,a 4005bd7c <rtems_rfs_bitmap_map_alloc+0xac>
<== NOT EXECUTED
4005bd30: fa 26 c0 00 st %i5, [ %i3 ]
<== NOT EXECUTED
/*
* 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)
4005bd34: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
4005bd38: 80 a6 40 01 cmp %i1, %g1
<== NOT EXECUTED
4005bd3c: 1a bf ff e9 bcc 4005bce0 <rtems_rfs_bitmap_map_alloc+0x10>
<== NOT EXECUTED
4005bd40: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
upper_seed += window;
4005bd44: b2 06 68 00 add %i1, 0x800, %i1
<== NOT EXECUTED
while (((upper_seed >= 0) && (upper_seed < control->size))
4005bd48: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
4005bd4c: 16 bf ff e9 bge 4005bcf0 <rtems_rfs_bitmap_map_alloc+0x20>
<== NOT EXECUTED
4005bd50: 80 a0 40 19 cmp %g1, %i1
<== NOT EXECUTED
|| ((lower_seed >= 0) && (lower_seed < control->size)))
4005bd54: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
4005bd58: 06 80 00 1b bl 4005bdc4 <rtems_rfs_bitmap_map_alloc+0xf4>
<== NOT EXECUTED
4005bd5c: 01 00 00 00 nop
<== NOT EXECUTED
4005bd60: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
4005bd64: 80 a0 40 1d cmp %g1, %i5
<== NOT EXECUTED
4005bd68: 08 80 00 17 bleu 4005bdc4 <rtems_rfs_bitmap_map_alloc+0xf4>
<== NOT EXECUTED
4005bd6c: 80 a6 40 01 cmp %i1, %g1
<== NOT EXECUTED
if (upper_seed < control->size)
4005bd70: 2a bf ff e3 bcs,a 4005bcfc <rtems_rfs_bitmap_map_alloc+0x2c>
<== NOT EXECUTED
4005bd74: f2 26 c0 00 st %i1, [ %i3 ]
<== NOT EXECUTED
*bit = lower_seed;
4005bd78: fa 26 c0 00 st %i5, [ %i3 ]
<== NOT EXECUTED
rc = rtems_rfs_search_map_for_clear_bit (control, bit, allocated,
4005bd7c: 96 10 3f ff mov -1, %o3
<== NOT EXECUTED
4005bd80: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
4005bd84: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
4005bd88: 7f ff fe a4 call 4005b818 <rtems_rfs_search_map_for_clear_bit.constprop.0>
<== NOT EXECUTED
4005bd8c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if ((rc > 0) || *allocated)
4005bd90: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005bd94: 14 80 00 0c bg 4005bdc4 <rtems_rfs_bitmap_map_alloc+0xf4>
<== NOT EXECUTED
4005bd98: 01 00 00 00 nop
<== NOT EXECUTED
4005bd9c: c2 0e 80 00 ldub [ %i2 ], %g1
<== NOT EXECUTED
4005bda0: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4005bda4: 12 80 00 08 bne 4005bdc4 <rtems_rfs_bitmap_map_alloc+0xf4>
<== NOT EXECUTED
4005bda8: 01 00 00 00 nop
<== NOT EXECUTED
if (upper_seed < control->size)
4005bdac: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
4005bdb0: 80 a6 40 01 cmp %i1, %g1
<== NOT EXECUTED
4005bdb4: 2a 80 00 06 bcs,a 4005bdcc <rtems_rfs_bitmap_map_alloc+0xfc>
<== NOT EXECUTED
4005bdb8: b2 06 68 00 add %i1, 0x800, %i1
<== NOT EXECUTED
if (lower_seed >= 0)
lower_seed -= window;
4005bdbc: 10 bf ff c8 b 4005bcdc <rtems_rfs_bitmap_map_alloc+0xc>
<== NOT EXECUTED
4005bdc0: ba 07 78 00 add %i5, -2048, %i5
<== NOT EXECUTED
}
return 0;
}
4005bdc4: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bdc8: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
lower_seed -= window;
4005bdcc: 10 bf ff c4 b 4005bcdc <rtems_rfs_bitmap_map_alloc+0xc>
<== NOT EXECUTED
4005bdd0: ba 07 78 00 add %i5, -2048, %i5
<== NOT EXECUTED
4005bb10 <rtems_rfs_bitmap_map_clear>:
{
4005bb10: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
rc = rtems_rfs_bitmap_load_map (control, &map);
4005bb14: 92 07 bf fc add %fp, -4, %o1
<== NOT EXECUTED
4005bb18: 7f ff ff 2c call 4005b7c8 <rtems_rfs_bitmap_load_map>
<== NOT EXECUTED
4005bb1c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005bb20: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005bb24: 24 80 00 04 ble,a 4005bb34 <rtems_rfs_bitmap_map_clear+0x24>
<== NOT EXECUTED
4005bb28: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
}
4005bb2c: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bb30: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
if (bit >= control->size)
4005bb34: 80 a0 40 19 cmp %g1, %i1
<== NOT EXECUTED
4005bb38: 08 bf ff fd bleu 4005bb2c <rtems_rfs_bitmap_map_clear+0x1c>
<== NOT EXECUTED
4005bb3c: 90 10 20 16 mov 0x16, %o0
<== NOT EXECUTED
element = map[index];
4005bb40: f8 07 bf fc ld [ %fp + -4 ], %i4
<== NOT EXECUTED
index = rtems_rfs_bitmap_map_index (bit);
4005bb44: 85 3e 60 05 sra %i1, 5, %g2
<== NOT EXECUTED
element = map[index];
4005bb48: bb 28 a0 02 sll %g2, 2, %i5
<== NOT EXECUTED
4005bb4c: c8 07 00 1d ld [ %i4 + %i5 ], %g4
<== NOT EXECUTED
search_map = control->search_bits;
4005bb50: f6 06 20 14 ld [ %i0 + 0x14 ], %i3
<== NOT EXECUTED
map[index] = rtems_rfs_bitmap_clear (element, 1 << offset);
4005bb54: 86 10 20 01 mov 1, %g3
<== NOT EXECUTED
4005bb58: 83 28 c0 19 sll %g3, %i1, %g1
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_CLEAR_BITS (target, bits);
4005bb5c: 82 10 40 04 or %g1, %g4, %g1
<== NOT EXECUTED
map[index] = rtems_rfs_bitmap_clear (element, 1 << offset);
4005bb60: c2 27 00 1d st %g1, [ %i4 + %i5 ]
<== NOT EXECUTED
if (rtems_rfs_bitmap_match(element, map[index]))
4005bb64: 80 a1 00 01 cmp %g4, %g1
<== NOT EXECUTED
4005bb68: 02 bf ff f1 be 4005bb2c <rtems_rfs_bitmap_map_clear+0x1c>
<== NOT EXECUTED
4005bb6c: 90 10 20 00 clr %o0
<== NOT EXECUTED
index = rtems_rfs_bitmap_map_index (bit);
4005bb70: b3 3e 60 0a sra %i1, 0xa, %i1
<== NOT EXECUTED
search_map[index] = rtems_rfs_bitmap_clear (search_map[index], 1 << offset);
4005bb74: b3 2e 60 02 sll %i1, 2, %i1
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_CLEAR_BITS (target, bits);
4005bb78: c2 06 c0 19 ld [ %i3 + %i1 ], %g1
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (control->buffer);
4005bb7c: c8 06 00 00 ld [ %i0 ], %g4
<== NOT EXECUTED
search_map[index] = rtems_rfs_bitmap_clear (search_map[index], 1 << offset);
4005bb80: 85 28 c0 02 sll %g3, %g2, %g2
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_CLEAR_BITS (target, bits);
4005bb84: 84 10 40 02 or %g1, %g2, %g2
<== NOT EXECUTED
search_map[index] = rtems_rfs_bitmap_clear (search_map[index], 1 << offset);
4005bb88: c4 26 c0 19 st %g2, [ %i3 + %i1 ]
<== NOT EXECUTED
control->free++;
4005bb8c: c2 06 20 10 ld [ %i0 + 0x10 ], %g1
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (control->buffer);
4005bb90: c6 29 00 00 stb %g3, [ %g4 ]
<== NOT EXECUTED
control->free++;
4005bb94: 82 00 60 01 inc %g1
<== NOT EXECUTED
4005bb98: c2 26 20 10 st %g1, [ %i0 + 0x10 ]
<== NOT EXECUTED
}
4005bb9c: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bba0: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
4005bc08 <rtems_rfs_bitmap_map_clear_all>:
{
4005bc08: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
rc = rtems_rfs_bitmap_load_map (control, &map);
4005bc0c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
{
4005bc10: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
rc = rtems_rfs_bitmap_load_map (control, &map);
4005bc14: 7f ff fe ed call 4005b7c8 <rtems_rfs_bitmap_load_map>
<== NOT EXECUTED
4005bc18: 92 07 bf fc add %fp, -4, %o1
<== NOT EXECUTED
if (rc > 0)
4005bc1c: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
4005bc20: 24 80 00 04 ble,a 4005bc30 <rtems_rfs_bitmap_map_clear_all+0x28>
<== NOT EXECUTED
4005bc24: c4 07 60 0c ld [ %i5 + 0xc ], %g2
<== NOT EXECUTED
}
4005bc28: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bc2c: 81 e8 00 00 restore
<== NOT EXECUTED
elements = rtems_rfs_bitmap_elements (control->size);
4005bc30: 86 00 bf ff add %g2, -1, %g3
<== NOT EXECUTED
control->free = control->size;
4005bc34: c4 27 60 10 st %g2, [ %i5 + 0x10 ]
<== NOT EXECUTED
elements = rtems_rfs_bitmap_elements (control->size);
4005bc38: b9 30 e0 05 srl %g3, 5, %i4
<== NOT EXECUTED
4005bc3c: c4 07 bf fc ld [ %fp + -4 ], %g2
<== NOT EXECUTED
4005bc40: 89 2f 20 02 sll %i4, 2, %g4
<== NOT EXECUTED
4005bc44: 82 00 a0 04 add %g2, 4, %g1
<== NOT EXECUTED
4005bc48: b8 07 20 01 inc %i4
<== NOT EXECUTED
4005bc4c: 88 00 40 04 add %g1, %g4, %g4
<== NOT EXECUTED
map[e] = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;
4005bc50: 10 80 00 03 b 4005bc5c <rtems_rfs_bitmap_map_clear_all+0x54>
<== NOT EXECUTED
4005bc54: b6 10 3f ff mov -1, %i3
<== NOT EXECUTED
4005bc58: 82 00 60 04 add %g1, 4, %g1
<== NOT EXECUTED
4005bc5c: f6 20 80 00 st %i3, [ %g2 ]
<== NOT EXECUTED
for (e = 0; e < elements; e++)
4005bc60: 80 a1 00 01 cmp %g4, %g1
<== NOT EXECUTED
4005bc64: 12 bf ff fd bne 4005bc58 <rtems_rfs_bitmap_map_clear_all+0x50>
<== NOT EXECUTED
4005bc68: 84 10 00 01 mov %g1, %g2
<== NOT EXECUTED
if (last_search_bit == 0)
4005bc6c: b8 8f 20 1f andcc %i4, 0x1f, %i4
<== NOT EXECUTED
4005bc70: 02 80 00 04 be 4005bc80 <rtems_rfs_bitmap_map_clear_all+0x78>
<== NOT EXECUTED
4005bc74: b4 10 3f ff mov -1, %i2
<== NOT EXECUTED
4005bc78: b8 20 00 1c neg %i4
<== NOT EXECUTED
4005bc7c: b5 36 c0 1c srl %i3, %i4, %i2
<== NOT EXECUTED
elements = rtems_rfs_bitmap_elements (elements);
4005bc80: 85 30 e0 0a srl %g3, 0xa, %g2
<== NOT EXECUTED
for (e = 0; e < (elements - 1); e++)
4005bc84: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
4005bc88: 02 80 00 0b be 4005bcb4 <rtems_rfs_bitmap_map_clear_all+0xac>
<== NOT EXECUTED
4005bc8c: f6 07 60 14 ld [ %i5 + 0x14 ], %i3
<== NOT EXECUTED
4005bc90: 87 28 a0 02 sll %g2, 2, %g3
<== NOT EXECUTED
4005bc94: 82 10 00 1b mov %i3, %g1
<== NOT EXECUTED
4005bc98: 86 00 c0 1b add %g3, %i3, %g3
<== NOT EXECUTED
control->search_bits[e] = RTEMS_RFS_BITMAP_ELEMENT_CLEAR;
4005bc9c: 88 10 3f ff mov -1, %g4
<== NOT EXECUTED
4005bca0: c8 20 40 00 st %g4, [ %g1 ]
<== NOT EXECUTED
4005bca4: 82 00 60 04 add %g1, 4, %g1
<== NOT EXECUTED
for (e = 0; e < (elements - 1); e++)
4005bca8: 80 a0 c0 01 cmp %g3, %g1
<== NOT EXECUTED
4005bcac: 32 bf ff fe bne,a 4005bca4 <rtems_rfs_bitmap_map_clear_all+0x9c>
<== NOT EXECUTED
4005bcb0: c8 20 40 00 st %g4, [ %g1 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (control->buffer);
4005bcb4: c2 07 40 00 ld [ %i5 ], %g1
<== NOT EXECUTED
control->search_bits[elements - 1] =
4005bcb8: 85 28 a0 02 sll %g2, 2, %g2
<== NOT EXECUTED
4005bcbc: f4 26 c0 02 st %i2, [ %i3 + %g2 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (control->buffer);
4005bcc0: 84 10 20 01 mov 1, %g2
<== NOT EXECUTED
4005bcc4: c4 28 40 00 stb %g2, [ %g1 ]
<== NOT EXECUTED
}
4005bcc8: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bccc: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
4005ba74 <rtems_rfs_bitmap_map_set>:
{
4005ba74: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
rc = rtems_rfs_bitmap_load_map (control, &map);
4005ba78: 92 07 bf fc add %fp, -4, %o1
<== NOT EXECUTED
4005ba7c: 7f ff ff 53 call 4005b7c8 <rtems_rfs_bitmap_load_map>
<== NOT EXECUTED
4005ba80: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005ba84: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005ba88: 24 80 00 04 ble,a 4005ba98 <rtems_rfs_bitmap_map_set+0x24>
<== NOT EXECUTED
4005ba8c: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
}
4005ba90: 81 c7 e0 08 ret
<== NOT EXECUTED
4005ba94: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
if (bit >= control->size)
4005ba98: 80 a0 40 19 cmp %g1, %i1
<== NOT EXECUTED
4005ba9c: 08 bf ff fd bleu 4005ba90 <rtems_rfs_bitmap_map_set+0x1c>
<== NOT EXECUTED
4005baa0: 90 10 20 16 mov 0x16, %o0
<== NOT EXECUTED
element = map[index];
4005baa4: fa 07 bf fc ld [ %fp + -4 ], %i5
<== NOT EXECUTED
index = rtems_rfs_bitmap_map_index (bit);
4005baa8: b9 3e 60 05 sra %i1, 5, %i4
<== NOT EXECUTED
element = map[index];
4005baac: 89 2f 20 02 sll %i4, 2, %g4
<== NOT EXECUTED
4005bab0: c6 07 40 04 ld [ %i5 + %g4 ], %g3
<== NOT EXECUTED
search_map = control->search_bits;
4005bab4: f6 06 20 14 ld [ %i0 + 0x14 ], %i3
<== NOT EXECUTED
map[index] = rtems_rfs_bitmap_set (element, 1 << offset);
4005bab8: 84 10 20 01 mov 1, %g2
<== NOT EXECUTED
4005babc: 83 28 80 19 sll %g2, %i1, %g1
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_SET_BITS (target, bits);
4005bac0: 82 28 c0 01 andn %g3, %g1, %g1
<== NOT EXECUTED
if (rtems_rfs_bitmap_match(element, map[index]))
4005bac4: 80 a0 c0 01 cmp %g3, %g1
<== NOT EXECUTED
4005bac8: 02 80 00 0f be 4005bb04 <rtems_rfs_bitmap_map_set+0x90>
<== NOT EXECUTED
4005bacc: c2 27 40 04 st %g1, [ %i5 + %g4 ]
<== NOT EXECUTED
control->free--;
4005bad0: c6 06 20 10 ld [ %i0 + 0x10 ], %g3
<== NOT EXECUTED
4005bad4: 86 00 ff ff add %g3, -1, %g3
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (control->buffer);
4005bad8: c8 06 00 00 ld [ %i0 ], %g4
<== NOT EXECUTED
control->free--;
4005badc: c6 26 20 10 st %g3, [ %i0 + 0x10 ]
<== NOT EXECUTED
if (rtems_rfs_bitmap_match(map[index], RTEMS_RFS_BITMAP_ELEMENT_SET))
4005bae0: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4005bae4: 12 80 00 08 bne 4005bb04 <rtems_rfs_bitmap_map_set+0x90>
<== NOT EXECUTED
4005bae8: c4 29 00 00 stb %g2, [ %g4 ]
<== NOT EXECUTED
index = rtems_rfs_bitmap_map_index (bit);
4005baec: b3 3e 60 0a sra %i1, 0xa, %i1
<== NOT EXECUTED
search_map[index] = rtems_rfs_bitmap_set (search_map[index], 1 << offset);
4005baf0: b3 2e 60 02 sll %i1, 2, %i1
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_SET_BITS (target, bits);
4005baf4: c2 06 c0 19 ld [ %i3 + %i1 ], %g1
<== NOT EXECUTED
search_map[index] = rtems_rfs_bitmap_set (search_map[index], 1 << offset);
4005baf8: 85 28 80 1c sll %g2, %i4, %g2
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_SET_BITS (target, bits);
4005bafc: 84 28 40 02 andn %g1, %g2, %g2
<== NOT EXECUTED
search_map[index] = rtems_rfs_bitmap_set (search_map[index], 1 << offset);
4005bb00: c4 26 c0 19 st %g2, [ %i3 + %i1 ]
<== NOT EXECUTED
return 0;
4005bb04: 90 10 20 00 clr %o0
<== NOT EXECUTED
}
4005bb08: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bb0c: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
4005bba4 <rtems_rfs_bitmap_map_test>:
{
4005bba4: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
rc = rtems_rfs_bitmap_load_map (control, &map);
4005bba8: 92 07 bf fc add %fp, -4, %o1
<== NOT EXECUTED
4005bbac: 7f ff ff 07 call 4005b7c8 <rtems_rfs_bitmap_load_map>
<== NOT EXECUTED
4005bbb0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005bbb4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005bbb8: 24 80 00 04 ble,a 4005bbc8 <rtems_rfs_bitmap_map_test+0x24>
<== NOT EXECUTED
4005bbbc: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
}
4005bbc0: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bbc4: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
if (bit >= control->size)
4005bbc8: 80 a0 40 19 cmp %g1, %i1
<== NOT EXECUTED
4005bbcc: 08 bf ff fd bleu 4005bbc0 <rtems_rfs_bitmap_map_test+0x1c>
<== NOT EXECUTED
4005bbd0: 90 10 20 16 mov 0x16, %o0
<== NOT EXECUTED
index = rtems_rfs_bitmap_map_index (bit);
4005bbd4: 83 3e 60 05 sra %i1, 5, %g1
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);
4005bbd8: c4 07 bf fc ld [ %fp + -4 ], %g2
<== NOT EXECUTED
*state = rtems_rfs_bitmap_test (map[index], bit);
4005bbdc: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);
4005bbe0: c4 00 80 01 ld [ %g2 + %g1 ], %g2
<== NOT EXECUTED
4005bbe4: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
return 0;
4005bbe8: 90 10 20 00 clr %o0
<== NOT EXECUTED
return RTEMS_RFS_BITMAP_TEST_BIT (target, bit);
4005bbec: b3 28 40 19 sll %g1, %i1, %i1
<== NOT EXECUTED
4005bbf0: b2 0e 40 02 and %i1, %g2, %i1
<== NOT EXECUTED
4005bbf4: 80 a0 00 19 cmp %g0, %i1
<== NOT EXECUTED
4005bbf8: 82 60 3f ff subx %g0, -1, %g1
<== NOT EXECUTED
4005bbfc: c2 2e 80 00 stb %g1, [ %i2 ]
<== NOT EXECUTED
}
4005bc00: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bc04: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
4005bed8 <rtems_rfs_bitmap_open>:
rtems_rfs_bitmap_open (rtems_rfs_bitmap_control* control,
rtems_rfs_file_system* fs,
rtems_rfs_buffer_handle* buffer,
size_t size,
rtems_rfs_buffer_block block)
{
4005bed8: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
size_t elements = rtems_rfs_bitmap_elements (size);
control->buffer = buffer;
4005bedc: f4 26 00 00 st %i2, [ %i0 ]
<== NOT EXECUTED
size_t elements = rtems_rfs_bitmap_elements (size);
4005bee0: 90 06 ff ff add %i3, -1, %o0
<== NOT EXECUTED
control->fs = fs;
4005bee4: f2 26 20 04 st %i1, [ %i0 + 4 ]
<== NOT EXECUTED
control->block = block;
control->size = size;
elements = rtems_rfs_bitmap_elements (elements);
4005bee8: 91 32 20 0a srl %o0, 0xa, %o0
<== NOT EXECUTED
control->block = block;
4005beec: f8 26 20 08 st %i4, [ %i0 + 8 ]
<== NOT EXECUTED
elements = rtems_rfs_bitmap_elements (elements);
4005bef0: 90 02 20 01 inc %o0
<== NOT EXECUTED
control->size = size;
4005bef4: f6 26 20 0c st %i3, [ %i0 + 0xc ]
<== NOT EXECUTED
control->search_bits = malloc (elements * sizeof (rtems_rfs_bitmap_element));
4005bef8: 7f fe bf a5 call 4000bd8c <malloc>
<== NOT EXECUTED
4005befc: 91 2a 20 02 sll %o0, 2, %o0
<== NOT EXECUTED
if (!control->search_bits)
4005bf00: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005bf04: 02 80 00 04 be 4005bf14 <rtems_rfs_bitmap_open+0x3c>
<== NOT EXECUTED
4005bf08: d0 26 20 14 st %o0, [ %i0 + 0x14 ]
<== NOT EXECUTED
return ENOMEM;
return rtems_rfs_bitmap_create_search (control);
4005bf0c: 7f ff ff b2 call 4005bdd4 <rtems_rfs_bitmap_create_search>
<== NOT EXECUTED
4005bf10: 81 e8 00 00 restore
<== NOT EXECUTED
}
4005bf14: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bf18: 91 e8 20 0c restore %g0, 0xc, %o0
<== NOT EXECUTED
40050278 <rtems_rfs_block_get_bpos>:
{
40050278: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
bpos->bno = pos / rtems_rfs_fs_block_size (fs);
4005027c: f0 06 20 08 ld [ %i0 + 8 ], %i0
<== NOT EXECUTED
40050280: 94 10 20 00 clr %o2
<== NOT EXECUTED
40050284: 96 10 00 18 mov %i0, %o3
<== NOT EXECUTED
40050288: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
4005028c: 40 00 a7 51 call 40079fd0 <__udivdi3>
<== NOT EXECUTED
40050290: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40050294: d2 26 c0 00 st %o1, [ %i3 ]
<== NOT EXECUTED
bpos->boff = pos % rtems_rfs_fs_block_size (fs);
40050298: 94 10 20 00 clr %o2
<== NOT EXECUTED
4005029c: 96 10 00 18 mov %i0, %o3
<== NOT EXECUTED
400502a0: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
400502a4: 40 00 a7 c4 call 4007a1b4 <__umoddi3>
<== NOT EXECUTED
400502a8: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
400502ac: d2 26 e0 04 st %o1, [ %i3 + 4 ]
<== NOT EXECUTED
}
400502b0: 81 c7 e0 08 ret
<== NOT EXECUTED
400502b4: 81 e8 00 00 restore
<== NOT EXECUTED
400502b8 <rtems_rfs_block_get_pos>:
return (bpos->bno * rtems_rfs_fs_block_size (fs)) + bpos->boff;
400502b8: c4 02 20 08 ld [ %o0 + 8 ], %g2
<== NOT EXECUTED
400502bc: c2 02 40 00 ld [ %o1 ], %g1
<== NOT EXECUTED
400502c0: d2 02 60 04 ld [ %o1 + 4 ], %o1
<== NOT EXECUTED
400502c4: 82 58 40 02 smul %g1, %g2, %g1
<== NOT EXECUTED
}
400502c8: 90 10 20 00 clr %o0
<== NOT EXECUTED
400502cc: 81 c3 e0 08 retl
<== NOT EXECUTED
400502d0: 92 00 40 09 add %g1, %o1, %o1
<== NOT EXECUTED
400502d4 <rtems_rfs_block_get_size>:
if (size->count == 0)
400502d4: c4 02 40 00 ld [ %o1 ], %g2
<== NOT EXECUTED
return 0;
400502d8: 98 10 20 00 clr %o4
<== NOT EXECUTED
if (size->count == 0)
400502dc: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
400502e0: 02 80 00 0b be 4005030c <rtems_rfs_block_get_size+0x38>
<== NOT EXECUTED
400502e4: 9a 10 20 00 clr %o5
<== NOT EXECUTED
if (size->offset == 0)
400502e8: c2 02 60 04 ld [ %o1 + 4 ], %g1
<== NOT EXECUTED
400502ec: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400502f0: 02 80 00 0a be 40050318 <rtems_rfs_block_get_size+0x44>
<== NOT EXECUTED
400502f4: c6 02 20 08 ld [ %o0 + 8 ], %g3
<== NOT EXECUTED
return (((uint64_t) (size->count - 1)) * block_size) + offset;
400502f8: 84 00 bf ff add %g2, -1, %g2
<== NOT EXECUTED
400502fc: 86 50 80 03 umul %g2, %g3, %g3
<== NOT EXECUTED
40050300: 85 40 00 00 rd %y, %g2
<== NOT EXECUTED
40050304: 9a 80 c0 01 addcc %g3, %g1, %o5
<== NOT EXECUTED
40050308: 98 40 a0 00 addx %g2, 0, %o4
<== NOT EXECUTED
}
4005030c: 90 10 00 0c mov %o4, %o0
<== NOT EXECUTED
40050310: 81 c3 e0 08 retl
<== NOT EXECUTED
40050314: 92 10 00 0d mov %o5, %o1
<== NOT EXECUTED
offset = rtems_rfs_fs_block_size (fs);
40050318: 10 bf ff f8 b 400502f8 <rtems_rfs_block_get_size+0x24>
<== NOT EXECUTED
4005031c: 82 10 00 03 mov %g3, %g1
<== NOT EXECUTED
4005049c <rtems_rfs_block_map_close>:
{
4005049c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (map->dirty && map->inode)
400504a0: c2 0e 40 00 ldub [ %i1 ], %g1
<== NOT EXECUTED
400504a4: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400504a8: 02 80 00 5f be 40050624 <rtems_rfs_block_map_close+0x188>
<== NOT EXECUTED
400504ac: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
400504b0: d2 06 60 04 ld [ %i1 + 4 ], %o1
<== NOT EXECUTED
400504b4: 80 a2 60 00 cmp %o1, 0
<== NOT EXECUTED
400504b8: 02 80 00 5b be 40050624 <rtems_rfs_block_map_close+0x188>
<== NOT EXECUTED
400504bc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
brc = rtems_rfs_inode_load (fs, map->inode);
400504c0: 40 00 17 0b call 400560ec <rtems_rfs_inode_load>
<== NOT EXECUTED
400504c4: b8 06 60 38 add %i1, 0x38, %i4
<== NOT EXECUTED
if (brc > 0)
400504c8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400504cc: 14 80 00 58 bg 4005062c <rtems_rfs_block_map_close+0x190>
<== NOT EXECUTED
400504d0: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
400504d4: 9e 10 3f f8 mov -8, %o7
<== NOT EXECUTED
400504d8: 84 06 60 24 add %i1, 0x24, %g2
<== NOT EXECUTED
400504dc: 9e 23 c0 19 sub %o7, %i1, %o7
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
400504e0: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
rtems_rfs_inode_set_block (map->inode, b, map->blocks[b]);
400504e4: c2 06 60 04 ld [ %i1 + 4 ], %g1
<== NOT EXECUTED
400504e8: c6 00 80 00 ld [ %g2 ], %g3
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->data.blocks[block], bno);
400504ec: f6 00 60 0c ld [ %g1 + 0xc ], %i3
<== NOT EXECUTED
400504f0: 88 03 c0 02 add %o7, %g2, %g4
<== NOT EXECUTED
400504f4: b5 30 e0 18 srl %g3, 0x18, %i2
<== NOT EXECUTED
400504f8: f4 2e c0 04 stb %i2, [ %i3 + %g4 ]
<== NOT EXECUTED
400504fc: b5 30 e0 10 srl %g3, 0x10, %i2
<== NOT EXECUTED
40050500: f6 00 60 0c ld [ %g1 + 0xc ], %i3
<== NOT EXECUTED
40050504: b6 06 c0 04 add %i3, %g4, %i3
<== NOT EXECUTED
40050508: f4 2e e0 01 stb %i2, [ %i3 + 1 ]
<== NOT EXECUTED
4005050c: b5 30 e0 08 srl %g3, 8, %i2
<== NOT EXECUTED
40050510: f6 00 60 0c ld [ %g1 + 0xc ], %i3
<== NOT EXECUTED
40050514: b6 06 c0 04 add %i3, %g4, %i3
<== NOT EXECUTED
40050518: f4 2e e0 02 stb %i2, [ %i3 + 2 ]
<== NOT EXECUTED
4005051c: 84 00 a0 04 add %g2, 4, %g2
<== NOT EXECUTED
40050520: f6 00 60 0c ld [ %g1 + 0xc ], %i3
<== NOT EXECUTED
40050524: 88 06 c0 04 add %i3, %g4, %g4
<== NOT EXECUTED
40050528: c6 29 20 03 stb %g3, [ %g4 + 3 ]
<== NOT EXECUTED
for (b = 0; b < RTEMS_RFS_INODE_BLOCKS; b++)
4005052c: 80 a7 00 02 cmp %i4, %g2
<== NOT EXECUTED
40050530: 12 bf ff ed bne 400504e4 <rtems_rfs_block_map_close+0x48>
<== NOT EXECUTED
40050534: f0 28 60 10 stb %i0, [ %g1 + 0x10 ]
<== NOT EXECUTED
rtems_rfs_inode_set_block_count (map->inode, map->size.count);
40050538: c2 06 60 04 ld [ %i1 + 4 ], %g1
<== NOT EXECUTED
4005053c: c4 06 60 08 ld [ %i1 + 8 ], %g2
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->block_count, block_count);
40050540: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
40050544: 89 30 a0 18 srl %g2, 0x18, %g4
<== NOT EXECUTED
40050548: c8 28 e0 0c stb %g4, [ %g3 + 0xc ]
<== NOT EXECUTED
4005054c: 89 30 a0 10 srl %g2, 0x10, %g4
<== NOT EXECUTED
40050550: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
40050554: c8 28 e0 0d stb %g4, [ %g3 + 0xd ]
<== NOT EXECUTED
40050558: 89 30 a0 08 srl %g2, 8, %g4
<== NOT EXECUTED
4005055c: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
40050560: c8 28 e0 0e stb %g4, [ %g3 + 0xe ]
<== NOT EXECUTED
brc = rtems_rfs_inode_unload (fs, map->inode, true);
40050564: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40050568: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
4005056c: c4 28 e0 0f stb %g2, [ %g3 + 0xf ]
<== NOT EXECUTED
40050570: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
rtems_rfs_inode_set_block_offset (map->inode, map->size.offset);
40050574: c6 06 60 04 ld [ %i1 + 4 ], %g3
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->block_offset, block_offset);
40050578: c8 0e 60 0e ldub [ %i1 + 0xe ], %g4
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
4005057c: f0 28 60 10 stb %i0, [ %g1 + 0x10 ]
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->block_offset, block_offset);
40050580: c2 00 e0 0c ld [ %g3 + 0xc ], %g1
<== NOT EXECUTED
40050584: c4 06 60 0c ld [ %i1 + 0xc ], %g2
<== NOT EXECUTED
40050588: c8 28 60 0a stb %g4, [ %g1 + 0xa ]
<== NOT EXECUTED
4005058c: c2 00 e0 0c ld [ %g3 + 0xc ], %g1
<== NOT EXECUTED
40050590: c4 28 60 0b stb %g2, [ %g1 + 0xb ]
<== NOT EXECUTED
rtems_rfs_inode_set_last_map_block (map->inode, map->last_map_block);
40050594: c4 06 60 04 ld [ %i1 + 4 ], %g2
<== NOT EXECUTED
40050598: c2 06 60 1c ld [ %i1 + 0x1c ], %g1
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
4005059c: f0 28 e0 10 stb %i0, [ %g3 + 0x10 ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->last_map_block, last_map_block);
400505a0: 89 30 60 18 srl %g1, 0x18, %g4
<== NOT EXECUTED
400505a4: c6 00 a0 0c ld [ %g2 + 0xc ], %g3
<== NOT EXECUTED
400505a8: c8 28 e0 30 stb %g4, [ %g3 + 0x30 ]
<== NOT EXECUTED
400505ac: 89 30 60 10 srl %g1, 0x10, %g4
<== NOT EXECUTED
400505b0: c6 00 a0 0c ld [ %g2 + 0xc ], %g3
<== NOT EXECUTED
400505b4: c8 28 e0 31 stb %g4, [ %g3 + 0x31 ]
<== NOT EXECUTED
400505b8: 89 30 60 08 srl %g1, 8, %g4
<== NOT EXECUTED
400505bc: c6 00 a0 0c ld [ %g2 + 0xc ], %g3
<== NOT EXECUTED
400505c0: c8 28 e0 32 stb %g4, [ %g3 + 0x32 ]
<== NOT EXECUTED
400505c4: c6 00 a0 0c ld [ %g2 + 0xc ], %g3
<== NOT EXECUTED
400505c8: c2 28 e0 33 stb %g1, [ %g3 + 0x33 ]
<== NOT EXECUTED
rtems_rfs_inode_set_last_data_block (map->inode, map->last_data_block);
400505cc: c2 06 60 04 ld [ %i1 + 4 ], %g1
<== NOT EXECUTED
400505d0: c6 06 60 20 ld [ %i1 + 0x20 ], %g3
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
400505d4: f0 28 a0 10 stb %i0, [ %g2 + 0x10 ]
<== NOT EXECUTED
* @param[in] block_count is the last data block number.
*/
static inline void
rtems_rfs_inode_set_last_data_block (rtems_rfs_inode_handle* handle, uint32_t last_data_block)
{
rtems_rfs_write_u32 (&handle->node->last_data_block, last_data_block);
400505d8: 89 30 e0 18 srl %g3, 0x18, %g4
<== NOT EXECUTED
400505dc: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400505e0: c8 28 a0 34 stb %g4, [ %g2 + 0x34 ]
<== NOT EXECUTED
400505e4: 89 30 e0 10 srl %g3, 0x10, %g4
<== NOT EXECUTED
400505e8: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400505ec: c8 28 a0 35 stb %g4, [ %g2 + 0x35 ]
<== NOT EXECUTED
400505f0: 89 30 e0 08 srl %g3, 8, %g4
<== NOT EXECUTED
400505f4: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400505f8: c8 28 a0 36 stb %g4, [ %g2 + 0x36 ]
<== NOT EXECUTED
400505fc: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
40050600: c6 28 a0 37 stb %g3, [ %g2 + 0x37 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40050604: f0 28 60 10 stb %i0, [ %g1 + 0x10 ]
<== NOT EXECUTED
brc = rtems_rfs_inode_unload (fs, map->inode, true);
40050608: 40 00 17 1f call 40056284 <rtems_rfs_inode_unload>
<== NOT EXECUTED
4005060c: d2 06 60 04 ld [ %i1 + 4 ], %o1
<== NOT EXECUTED
map->dirty = false;
40050610: c0 2e 40 00 clrb [ %i1 ]
<== NOT EXECUTED
40050614: 82 38 00 08 xnor %g0, %o0, %g1
<== NOT EXECUTED
40050618: 83 38 60 1f sra %g1, 0x1f, %g1
<== NOT EXECUTED
4005061c: 10 80 00 04 b 4005062c <rtems_rfs_block_map_close+0x190>
<== NOT EXECUTED
40050620: b0 0a 00 01 and %o0, %g1, %i0
<== NOT EXECUTED
int rc = 0;
40050624: b0 10 20 00 clr %i0
<== NOT EXECUTED
40050628: b8 06 60 38 add %i1, 0x38, %i4
<== NOT EXECUTED
map->inode = NULL;
4005062c: c0 26 60 04 clr [ %i1 + 4 ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40050630: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
40050634: 40 00 04 1c call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40050638: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
handle->dirty = false;
4005063c: c0 2e 60 38 clrb [ %i1 + 0x38 ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40050640: 92 06 60 44 add %i1, 0x44, %o1
<== NOT EXECUTED
handle->bnum = 0;
40050644: c0 26 60 3c clr [ %i1 + 0x3c ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40050648: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
4005064c: 40 00 04 16 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40050650: c0 26 60 40 clr [ %i1 + 0x40 ]
<== NOT EXECUTED
handle->dirty = false;
40050654: c0 2e 60 44 clrb [ %i1 + 0x44 ]
<== NOT EXECUTED
handle->bnum = 0;
40050658: c0 26 60 48 clr [ %i1 + 0x48 ]
<== NOT EXECUTED
handle->buffer = NULL;
4005065c: c0 26 60 4c clr [ %i1 + 0x4c ]
<== NOT EXECUTED
}
40050660: 81 c7 e0 08 ret
<== NOT EXECUTED
40050664: 81 e8 00 00 restore
<== NOT EXECUTED
40050668 <rtems_rfs_block_map_find>:
{
40050668: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
*block = 0;
4005066c: c0 26 c0 00 clr [ %i3 ]
<== NOT EXECUTED
if (rtems_rfs_block_pos_block_past_end (bpos, &map->size))
40050670: c2 06 80 00 ld [ %i2 ], %g1
<== NOT EXECUTED
40050674: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40050678: 02 80 00 05 be 4005068c <rtems_rfs_block_map_find+0x24>
<== NOT EXECUTED
4005067c: c4 06 60 08 ld [ %i1 + 8 ], %g2
<== NOT EXECUTED
40050680: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40050684: 02 80 00 1a be 400506ec <rtems_rfs_block_map_find+0x84>
<== NOT EXECUTED
40050688: 90 10 20 06 mov 6, %o0
<== NOT EXECUTED
4005068c: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40050690: 1a 80 00 17 bcc 400506ec <rtems_rfs_block_map_find+0x84>
<== NOT EXECUTED
40050694: 90 10 20 06 mov 6, %o0
<== NOT EXECUTED
if ((bpos->bno == map->bpos.bno) && (map->bpos.block != 0))
40050698: c6 06 60 10 ld [ %i1 + 0x10 ], %g3
<== NOT EXECUTED
4005069c: 80 a0 40 03 cmp %g1, %g3
<== NOT EXECUTED
400506a0: 22 80 00 39 be,a 40050784 <rtems_rfs_block_map_find+0x11c>
<== NOT EXECUTED
400506a4: c6 06 60 18 ld [ %i1 + 0x18 ], %g3
<== NOT EXECUTED
if (map->size.count <= RTEMS_RFS_INODE_BLOCKS)
400506a8: 80 a0 a0 05 cmp %g2, 5
<== NOT EXECUTED
400506ac: 38 80 00 12 bgu,a 400506f4 <rtems_rfs_block_map_find+0x8c>
<== NOT EXECUTED
400506b0: c6 06 20 34 ld [ %i0 + 0x34 ], %g3
<== NOT EXECUTED
*block = map->blocks[bpos->bno];
400506b4: 82 00 60 08 add %g1, 8, %g1
<== NOT EXECUTED
400506b8: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
400506bc: 82 06 40 01 add %i1, %g1, %g1
<== NOT EXECUTED
400506c0: c2 00 60 04 ld [ %g1 + 4 ], %g1
<== NOT EXECUTED
400506c4: c2 26 c0 00 st %g1, [ %i3 ]
<== NOT EXECUTED
map->bpos.block = *block;
400506c8: 90 10 20 00 clr %o0
<== NOT EXECUTED
rtems_rfs_block_copy_bpos (&map->bpos, bpos);
400506cc: c2 06 a0 04 ld [ %i2 + 4 ], %g1
<== NOT EXECUTED
400506d0: c4 06 80 00 ld [ %i2 ], %g2
<== NOT EXECUTED
400506d4: c6 06 a0 08 ld [ %i2 + 8 ], %g3
<== NOT EXECUTED
400506d8: c6 26 60 18 st %g3, [ %i1 + 0x18 ]
<== NOT EXECUTED
400506dc: c4 26 60 10 st %g2, [ %i1 + 0x10 ]
<== NOT EXECUTED
400506e0: c2 26 60 14 st %g1, [ %i1 + 0x14 ]
<== NOT EXECUTED
map->bpos.block = *block;
400506e4: c2 06 c0 00 ld [ %i3 ], %g1
<== NOT EXECUTED
400506e8: c2 26 60 18 st %g1, [ %i1 + 0x18 ]
<== NOT EXECUTED
}
400506ec: 81 c7 e0 08 ret
<== NOT EXECUTED
400506f0: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
direct = bpos->bno % fs->blocks_per_block;
400506f4: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
400506f8: 01 00 00 00 nop
<== NOT EXECUTED
400506fc: 01 00 00 00 nop
<== NOT EXECUTED
40050700: 01 00 00 00 nop
<== NOT EXECUTED
40050704: 96 70 40 03 udiv %g1, %g3, %o3
<== NOT EXECUTED
singly = bpos->bno / fs->blocks_per_block;
40050708: d6 27 bf fc st %o3, [ %fp + -4 ]
<== NOT EXECUTED
direct = bpos->bno % fs->blocks_per_block;
4005070c: ba 5a c0 03 smul %o3, %g3, %i5
<== NOT EXECUTED
if (map->size.count <= fs->block_map_singly_blocks)
40050710: c8 06 20 38 ld [ %i0 + 0x38 ], %g4
<== NOT EXECUTED
40050714: 80 a1 00 02 cmp %g4, %g2
<== NOT EXECUTED
40050718: 1a 80 00 20 bcc 40050798 <rtems_rfs_block_map_find+0x130>
<== NOT EXECUTED
4005071c: ba 20 40 1d sub %g1, %i5, %i5
<== NOT EXECUTED
singly %= fs->blocks_per_block;
40050720: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40050724: 01 00 00 00 nop
<== NOT EXECUTED
40050728: 01 00 00 00 nop
<== NOT EXECUTED
4005072c: 01 00 00 00 nop
<== NOT EXECUTED
40050730: 82 72 c0 03 udiv %o3, %g3, %g1
<== NOT EXECUTED
40050734: 86 58 40 03 smul %g1, %g3, %g3
<== NOT EXECUTED
40050738: 96 22 c0 03 sub %o3, %g3, %o3
<== NOT EXECUTED
4005073c: d6 27 bf fc st %o3, [ %fp + -4 ]
<== NOT EXECUTED
if (map->size.count < fs->block_map_doubly_blocks)
40050740: c6 06 20 3c ld [ %i0 + 0x3c ], %g3
<== NOT EXECUTED
40050744: 80 a0 c0 02 cmp %g3, %g2
<== NOT EXECUTED
40050748: 08 bf ff e9 bleu 400506ec <rtems_rfs_block_map_find+0x84>
<== NOT EXECUTED
4005074c: 90 10 20 06 mov 6, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_find_indirect (fs,
40050750: 82 00 60 08 add %g1, 8, %g1
<== NOT EXECUTED
40050754: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
40050758: 82 06 40 01 add %i1, %g1, %g1
<== NOT EXECUTED
4005075c: d4 00 60 04 ld [ %g1 + 4 ], %o2
<== NOT EXECUTED
40050760: 98 07 bf fc add %fp, -4, %o4
<== NOT EXECUTED
40050764: 92 06 60 44 add %i1, 0x44, %o1
<== NOT EXECUTED
40050768: 7f ff fe 5e call 400500e0 <rtems_rfs_block_find_indirect>
<== NOT EXECUTED
4005076c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc == 0)
40050770: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050774: 12 bf ff de bne 400506ec <rtems_rfs_block_map_find+0x84>
<== NOT EXECUTED
40050778: d4 07 bf fc ld [ %fp + -4 ], %o2
<== NOT EXECUTED
rc = rtems_rfs_block_find_indirect (fs,
4005077c: 10 80 00 0c b 400507ac <rtems_rfs_block_map_find+0x144>
<== NOT EXECUTED
40050780: 98 10 00 1b mov %i3, %o4
<== NOT EXECUTED
if ((bpos->bno == map->bpos.bno) && (map->bpos.block != 0))
40050784: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
40050788: 02 bf ff c9 be 400506ac <rtems_rfs_block_map_find+0x44>
<== NOT EXECUTED
4005078c: 80 a0 a0 05 cmp %g2, 5
<== NOT EXECUTED
*block = map->bpos.block;
40050790: 10 bf ff ce b 400506c8 <rtems_rfs_block_map_find+0x60>
<== NOT EXECUTED
40050794: c6 26 c0 00 st %g3, [ %i3 ]
<== NOT EXECUTED
rc = rtems_rfs_block_find_indirect (fs,
40050798: 96 02 e0 08 add %o3, 8, %o3
<== NOT EXECUTED
4005079c: 97 2a e0 02 sll %o3, 2, %o3
<== NOT EXECUTED
400507a0: 96 06 40 0b add %i1, %o3, %o3
<== NOT EXECUTED
400507a4: d4 02 e0 04 ld [ %o3 + 4 ], %o2
<== NOT EXECUTED
rc = rtems_rfs_block_find_indirect (fs,
400507a8: 98 10 00 1b mov %i3, %o4
<== NOT EXECUTED
400507ac: 96 10 00 1d mov %i5, %o3
<== NOT EXECUTED
400507b0: 92 06 60 38 add %i1, 0x38, %o1
<== NOT EXECUTED
400507b4: 7f ff fe 4b call 400500e0 <rtems_rfs_block_find_indirect>
<== NOT EXECUTED
400507b8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc == 0)
400507bc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400507c0: 22 bf ff c3 be,a 400506cc <rtems_rfs_block_map_find+0x64>
<== NOT EXECUTED
400507c4: 90 10 20 00 clr %o0
<== NOT EXECUTED
400507c8: 30 bf ff c9 b,a 400506ec <rtems_rfs_block_map_find+0x84>
<== NOT EXECUTED
40050f80 <rtems_rfs_block_map_free_all>:
int
rtems_rfs_block_map_free_all (rtems_rfs_file_system* fs,
rtems_rfs_block_map* map)
{
return rtems_rfs_block_map_shrink (fs, map, map->size.count);
40050f80: d4 02 60 08 ld [ %o1 + 8 ], %o2
<== NOT EXECUTED
40050f84: 82 13 c0 00 mov %o7, %g1
<== NOT EXECUTED
40050f88: 7f ff ff 39 call 40050c6c <rtems_rfs_block_map_shrink>
<== NOT EXECUTED
40050f8c: 9e 10 40 00 mov %g1, %o7
<== NOT EXECUTED
40050878 <rtems_rfs_block_map_grow>:
{
40050878: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BLOCK_MAP_GROW))
4005087c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40050880: 40 00 1d c8 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40050884: 13 00 00 08 sethi %hi(0x2000), %o1
<== NOT EXECUTED
40050888: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005088c: 32 80 00 eb bne,a 40050c38 <rtems_rfs_block_map_grow+0x3c0>
<== NOT EXECUTED
40050890: d4 06 60 08 ld [ %i1 + 8 ], %o2
<== NOT EXECUTED
if ((map->size.count + blocks) >= rtems_rfs_fs_max_block_map_blocks (fs))
40050894: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40050898: c4 06 20 3c ld [ %i0 + 0x3c ], %g2
<== NOT EXECUTED
4005089c: 82 06 80 01 add %i2, %g1, %g1
<== NOT EXECUTED
400508a0: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
400508a4: 1a 80 00 68 bcc 40050a44 <rtems_rfs_block_map_grow+0x1cc>
<== NOT EXECUTED
400508a8: b8 10 20 1b mov 0x1b, %i4
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
400508ac: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
400508b0: 02 80 00 65 be 40050a44 <rtems_rfs_block_map_grow+0x1cc>
<== NOT EXECUTED
400508b4: b8 10 20 00 clr %i4
<== NOT EXECUTED
400508b8: d2 06 60 20 ld [ %i1 + 0x20 ], %o1
<== NOT EXECUTED
400508bc: a8 10 20 00 clr %l4
<== NOT EXECUTED
rtems_rfs_block_set_number (&map->singly_buffer, direct, block);
400508c0: a0 10 20 01 mov 1, %l0
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs,
400508c4: a4 06 60 44 add %i1, 0x44, %l2
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
400508c8: 10 80 00 10 b 40050908 <rtems_rfs_block_map_grow+0x90>
<== NOT EXECUTED
400508cc: a2 06 60 38 add %i1, 0x38, %l1
<== NOT EXECUTED
map->blocks[map->size.count] = block;
400508d0: 84 00 60 08 add %g1, 8, %g2
<== NOT EXECUTED
400508d4: 85 28 a0 02 sll %g2, 2, %g2
<== NOT EXECUTED
400508d8: 84 06 40 02 add %i1, %g2, %g2
<== NOT EXECUTED
400508dc: d2 20 a0 04 st %o1, [ %g2 + 4 ]
<== NOT EXECUTED
map->size.count++;
400508e0: 82 00 60 01 inc %g1
<== NOT EXECUTED
map->size.offset = 0;
400508e4: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
if (b == 0)
400508e8: 80 a5 20 00 cmp %l4, 0
<== NOT EXECUTED
400508ec: 02 80 00 4f be 40050a28 <rtems_rfs_block_map_grow+0x1b0>
<== NOT EXECUTED
400508f0: c2 26 60 08 st %g1, [ %i1 + 8 ]
<== NOT EXECUTED
map->last_data_block = block;
400508f4: d2 26 60 20 st %o1, [ %i1 + 0x20 ]
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
400508f8: a8 05 20 01 inc %l4
<== NOT EXECUTED
400508fc: 80 a5 00 1a cmp %l4, %i2
<== NOT EXECUTED
40050900: 02 80 00 50 be 40050a40 <rtems_rfs_block_map_grow+0x1c8>
<== NOT EXECUTED
40050904: e0 2e 40 00 stb %l0, [ %i1 ]
<== NOT EXECUTED
rc = rtems_rfs_group_bitmap_alloc (fs, map->last_data_block,
40050908: 96 07 bf f8 add %fp, -8, %o3
<== NOT EXECUTED
4005090c: 94 10 20 00 clr %o2
<== NOT EXECUTED
40050910: 40 00 14 81 call 40055b14 <rtems_rfs_group_bitmap_alloc>
<== NOT EXECUTED
40050914: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050918: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
4005091c: 14 80 00 4a bg 40050a44 <rtems_rfs_block_map_grow+0x1cc>
<== NOT EXECUTED
40050920: 01 00 00 00 nop
<== NOT EXECUTED
if (map->size.count < RTEMS_RFS_INODE_BLOCKS)
40050924: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40050928: 80 a0 60 04 cmp %g1, 4
<== NOT EXECUTED
4005092c: 08 bf ff e9 bleu 400508d0 <rtems_rfs_block_map_grow+0x58>
<== NOT EXECUTED
40050930: d2 07 bf f8 ld [ %fp + -8 ], %o1
<== NOT EXECUTED
direct = map->size.count % fs->blocks_per_block;
40050934: e6 06 20 34 ld [ %i0 + 0x34 ], %l3
<== NOT EXECUTED
if (map->size.count < fs->block_map_singly_blocks)
40050938: c4 06 20 38 ld [ %i0 + 0x38 ], %g2
<== NOT EXECUTED
direct = map->size.count % fs->blocks_per_block;
4005093c: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40050940: 01 00 00 00 nop
<== NOT EXECUTED
40050944: 01 00 00 00 nop
<== NOT EXECUTED
40050948: 01 00 00 00 nop
<== NOT EXECUTED
4005094c: 96 70 40 13 udiv %g1, %l3, %o3
<== NOT EXECUTED
if (map->size.count < fs->block_map_singly_blocks)
40050950: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
direct = map->size.count % fs->blocks_per_block;
40050954: ba 5a c0 13 smul %o3, %l3, %i5
<== NOT EXECUTED
if (map->size.count < fs->block_map_singly_blocks)
40050958: 1a 80 00 3d bcc 40050a4c <rtems_rfs_block_map_grow+0x1d4>
<== NOT EXECUTED
4005095c: ba 20 40 1d sub %g1, %i5, %i5
<== NOT EXECUTED
if ((direct == 0) ||
40050960: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
40050964: 02 80 00 06 be 4005097c <rtems_rfs_block_map_grow+0x104>
<== NOT EXECUTED
40050968: 80 a2 e0 00 cmp %o3, 0
<== NOT EXECUTED
4005096c: 12 80 00 95 bne 40050bc0 <rtems_rfs_block_map_grow+0x348>
<== NOT EXECUTED
40050970: 80 a7 60 05 cmp %i5, 5
<== NOT EXECUTED
40050974: 32 80 00 94 bne,a 40050bc4 <rtems_rfs_block_map_grow+0x34c>
<== NOT EXECUTED
40050978: 82 02 e0 08 add %o3, 8, %g1
<== NOT EXECUTED
upping = map->size.count == RTEMS_RFS_INODE_BLOCKS;
4005097c: 82 18 60 05 xor %g1, 5, %g1
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_alloc (fs, map,
40050980: 80 a0 00 01 cmp %g0, %g1
<== NOT EXECUTED
&map->blocks[singly],
40050984: 96 02 e0 09 add %o3, 9, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_alloc (fs, map,
40050988: 98 60 3f ff subx %g0, -1, %o4
<== NOT EXECUTED
&map->blocks[singly],
4005098c: 97 2a e0 02 sll %o3, 2, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_alloc (fs, map,
40050990: 94 10 00 11 mov %l1, %o2
<== NOT EXECUTED
40050994: 96 06 40 0b add %i1, %o3, %o3
<== NOT EXECUTED
40050998: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
4005099c: 7f ff fd 7e call 4004ff94 <rtems_rfs_block_map_indirect_alloc>
<== NOT EXECUTED
400509a0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400509a4: b8 10 00 08 mov %o0, %i4
<== NOT EXECUTED
if (rc > 0)
400509a8: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
400509ac: 14 80 00 aa bg 40050c54 <rtems_rfs_block_map_grow+0x3dc>
<== NOT EXECUTED
400509b0: d4 07 bf f8 ld [ %fp + -8 ], %o2
<== NOT EXECUTED
rtems_rfs_block_set_number (&map->singly_buffer, direct, block);
400509b4: c2 06 60 40 ld [ %i1 + 0x40 ], %g1
<== NOT EXECUTED
400509b8: c4 00 60 1c ld [ %g1 + 0x1c ], %g2
<== NOT EXECUTED
400509bc: c6 0f bf f8 ldub [ %fp + -8 ], %g3
<== NOT EXECUTED
400509c0: 83 2f 60 02 sll %i5, 2, %g1
<== NOT EXECUTED
400509c4: c6 28 80 01 stb %g3, [ %g2 + %g1 ]
<== NOT EXECUTED
if (b == 0)
400509c8: 80 a5 20 00 cmp %l4, 0
<== NOT EXECUTED
rtems_rfs_block_set_number (&map->singly_buffer, direct, block);
400509cc: c4 06 60 40 ld [ %i1 + 0x40 ], %g2
<== NOT EXECUTED
400509d0: c4 00 a0 1c ld [ %g2 + 0x1c ], %g2
<== NOT EXECUTED
400509d4: c6 17 bf f8 lduh [ %fp + -8 ], %g3
<== NOT EXECUTED
400509d8: 84 00 80 01 add %g2, %g1, %g2
<== NOT EXECUTED
400509dc: c6 28 a0 01 stb %g3, [ %g2 + 1 ]
<== NOT EXECUTED
400509e0: c4 06 60 40 ld [ %i1 + 0x40 ], %g2
<== NOT EXECUTED
400509e4: c4 00 a0 1c ld [ %g2 + 0x1c ], %g2
<== NOT EXECUTED
400509e8: c6 07 bf f8 ld [ %fp + -8 ], %g3
<== NOT EXECUTED
400509ec: 84 00 80 01 add %g2, %g1, %g2
<== NOT EXECUTED
400509f0: 87 30 e0 08 srl %g3, 8, %g3
<== NOT EXECUTED
400509f4: c6 28 a0 02 stb %g3, [ %g2 + 2 ]
<== NOT EXECUTED
400509f8: c4 06 60 40 ld [ %i1 + 0x40 ], %g2
<== NOT EXECUTED
400509fc: c4 00 a0 1c ld [ %g2 + 0x1c ], %g2
<== NOT EXECUTED
40050a00: 82 00 80 01 add %g2, %g1, %g1
<== NOT EXECUTED
40050a04: c4 07 bf f8 ld [ %fp + -8 ], %g2
<== NOT EXECUTED
40050a08: c4 28 60 03 stb %g2, [ %g1 + 3 ]
<== NOT EXECUTED
40050a0c: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
map->size.count++;
40050a10: 82 00 60 01 inc %g1
<== NOT EXECUTED
rtems_rfs_block_set_number (&map->singly_buffer, direct, block);
40050a14: e0 2e 60 38 stb %l0, [ %i1 + 0x38 ]
<== NOT EXECUTED
map->size.offset = 0;
40050a18: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
map->size.count++;
40050a1c: c2 26 60 08 st %g1, [ %i1 + 8 ]
<== NOT EXECUTED
if (b == 0)
40050a20: 12 bf ff b5 bne 400508f4 <rtems_rfs_block_map_grow+0x7c>
<== NOT EXECUTED
40050a24: d2 07 bf f8 ld [ %fp + -8 ], %o1
<== NOT EXECUTED
*new_block = block;
40050a28: d2 26 c0 00 st %o1, [ %i3 ]
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
40050a2c: a8 05 20 01 inc %l4
<== NOT EXECUTED
map->last_data_block = block;
40050a30: d2 26 60 20 st %o1, [ %i1 + 0x20 ]
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
40050a34: 80 a5 00 1a cmp %l4, %i2
<== NOT EXECUTED
40050a38: 12 bf ff b4 bne 40050908 <rtems_rfs_block_map_grow+0x90>
<== NOT EXECUTED
40050a3c: e0 2e 40 00 stb %l0, [ %i1 ]
<== NOT EXECUTED
return 0;
40050a40: b8 10 20 00 clr %i4
<== NOT EXECUTED
}
40050a44: 81 c7 e0 08 ret
<== NOT EXECUTED
40050a48: 91 e8 00 1c restore %g0, %i4, %o0
<== NOT EXECUTED
doubly = singly / fs->blocks_per_block;
40050a4c: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40050a50: 01 00 00 00 nop
<== NOT EXECUTED
40050a54: 01 00 00 00 nop
<== NOT EXECUTED
40050a58: 01 00 00 00 nop
<== NOT EXECUTED
40050a5c: aa 72 c0 13 udiv %o3, %l3, %l5
<== NOT EXECUTED
if (direct == 0)
40050a60: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
singly %= fs->blocks_per_block;
40050a64: a6 5d 40 13 smul %l5, %l3, %l3
<== NOT EXECUTED
if (direct == 0)
40050a68: 12 80 00 37 bne 40050b44 <rtems_rfs_block_map_grow+0x2cc>
<== NOT EXECUTED
40050a6c: a6 22 c0 13 sub %o3, %l3, %l3
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_alloc (fs, map,
40050a70: 98 10 20 00 clr %o4
<== NOT EXECUTED
40050a74: 96 07 bf fc add %fp, -4, %o3
<== NOT EXECUTED
40050a78: 94 10 00 11 mov %l1, %o2
<== NOT EXECUTED
40050a7c: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40050a80: 7f ff fd 45 call 4004ff94 <rtems_rfs_block_map_indirect_alloc>
<== NOT EXECUTED
40050a84: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050a88: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
40050a8c: 14 80 00 71 bg 40050c50 <rtems_rfs_block_map_grow+0x3d8>
<== NOT EXECUTED
40050a90: 80 a4 e0 00 cmp %l3, 0
<== NOT EXECUTED
if ((singly == 0) ||
40050a94: 02 80 00 06 be 40050aac <rtems_rfs_block_map_grow+0x234>
<== NOT EXECUTED
40050a98: 80 a5 60 00 cmp %l5, 0
<== NOT EXECUTED
40050a9c: 12 80 00 53 bne 40050be8 <rtems_rfs_block_map_grow+0x370>
<== NOT EXECUTED
40050aa0: 80 a4 e0 05 cmp %l3, 5
<== NOT EXECUTED
40050aa4: 12 80 00 52 bne 40050bec <rtems_rfs_block_map_grow+0x374>
<== NOT EXECUTED
40050aa8: 82 05 60 08 add %l5, 8, %g1
<== NOT EXECUTED
upping = map->size.count == fs->block_map_singly_blocks;
40050aac: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40050ab0: c4 06 20 38 ld [ %i0 + 0x38 ], %g2
<== NOT EXECUTED
40050ab4: 82 18 40 02 xor %g1, %g2, %g1
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_alloc (fs, map,
40050ab8: 80 a0 00 01 cmp %g0, %g1
<== NOT EXECUTED
&map->blocks[doubly],
40050abc: 96 05 60 09 add %l5, 9, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_alloc (fs, map,
40050ac0: 98 60 3f ff subx %g0, -1, %o4
<== NOT EXECUTED
&map->blocks[doubly],
40050ac4: 97 2a e0 02 sll %o3, 2, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_alloc (fs, map,
40050ac8: 94 10 00 12 mov %l2, %o2
<== NOT EXECUTED
40050acc: 96 06 40 0b add %i1, %o3, %o3
<== NOT EXECUTED
40050ad0: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40050ad4: 7f ff fd 30 call 4004ff94 <rtems_rfs_block_map_indirect_alloc>
<== NOT EXECUTED
40050ad8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050adc: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
40050ae0: 14 80 00 4e bg 40050c18 <rtems_rfs_block_map_grow+0x3a0>
<== NOT EXECUTED
40050ae4: d4 07 bf fc ld [ %fp + -4 ], %o2
<== NOT EXECUTED
rtems_rfs_block_set_number (&map->doubly_buffer,
40050ae8: c2 06 60 4c ld [ %i1 + 0x4c ], %g1
<== NOT EXECUTED
40050aec: c4 0f bf fc ldub [ %fp + -4 ], %g2
<== NOT EXECUTED
40050af0: c2 00 60 1c ld [ %g1 + 0x1c ], %g1
<== NOT EXECUTED
40050af4: 97 2c e0 02 sll %l3, 2, %o3
<== NOT EXECUTED
40050af8: c4 28 40 0b stb %g2, [ %g1 + %o3 ]
<== NOT EXECUTED
40050afc: c2 06 60 4c ld [ %i1 + 0x4c ], %g1
<== NOT EXECUTED
40050b00: c4 17 bf fc lduh [ %fp + -4 ], %g2
<== NOT EXECUTED
40050b04: c2 00 60 1c ld [ %g1 + 0x1c ], %g1
<== NOT EXECUTED
40050b08: 82 00 40 0b add %g1, %o3, %g1
<== NOT EXECUTED
40050b0c: c4 28 60 01 stb %g2, [ %g1 + 1 ]
<== NOT EXECUTED
40050b10: c2 06 60 4c ld [ %i1 + 0x4c ], %g1
<== NOT EXECUTED
40050b14: c2 00 60 1c ld [ %g1 + 0x1c ], %g1
<== NOT EXECUTED
40050b18: c4 07 bf fc ld [ %fp + -4 ], %g2
<== NOT EXECUTED
40050b1c: 82 00 40 0b add %g1, %o3, %g1
<== NOT EXECUTED
40050b20: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40050b24: c4 28 60 02 stb %g2, [ %g1 + 2 ]
<== NOT EXECUTED
40050b28: c2 06 60 4c ld [ %i1 + 0x4c ], %g1
<== NOT EXECUTED
40050b2c: e6 00 60 1c ld [ %g1 + 0x1c ], %l3
<== NOT EXECUTED
40050b30: c2 07 bf fc ld [ %fp + -4 ], %g1
<== NOT EXECUTED
40050b34: 96 04 c0 0b add %l3, %o3, %o3
<== NOT EXECUTED
40050b38: c2 2a e0 03 stb %g1, [ %o3 + 3 ]
<== NOT EXECUTED
40050b3c: 10 bf ff 9e b 400509b4 <rtems_rfs_block_map_grow+0x13c>
<== NOT EXECUTED
40050b40: e0 2e 60 44 stb %l0, [ %i1 + 0x44 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs,
40050b44: aa 05 60 08 add %l5, 8, %l5
<== NOT EXECUTED
40050b48: ab 2d 60 02 sll %l5, 2, %l5
<== NOT EXECUTED
40050b4c: aa 06 40 15 add %i1, %l5, %l5
<== NOT EXECUTED
40050b50: d4 05 60 04 ld [ %l5 + 4 ], %o2
<== NOT EXECUTED
40050b54: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40050b58: 92 10 00 12 mov %l2, %o1
<== NOT EXECUTED
40050b5c: 40 00 02 0b call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40050b60: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050b64: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
40050b68: 14 80 00 3a bg 40050c50 <rtems_rfs_block_map_grow+0x3d8>
<== NOT EXECUTED
40050b6c: 97 2c e0 02 sll %l3, 2, %o3
<== NOT EXECUTED
singly_block = rtems_rfs_block_get_number (&map->doubly_buffer,
40050b70: c2 06 60 4c ld [ %i1 + 0x4c ], %g1
<== NOT EXECUTED
40050b74: c4 00 60 1c ld [ %g1 + 0x1c ], %g2
<== NOT EXECUTED
40050b78: d4 08 80 0b ldub [ %g2 + %o3 ], %o2
<== NOT EXECUTED
40050b7c: 82 00 80 0b add %g2, %o3, %g1
<== NOT EXECUTED
40050b80: c6 08 60 03 ldub [ %g1 + 3 ], %g3
<== NOT EXECUTED
40050b84: c4 08 60 01 ldub [ %g1 + 1 ], %g2
<== NOT EXECUTED
40050b88: c2 08 60 02 ldub [ %g1 + 2 ], %g1
<== NOT EXECUTED
40050b8c: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40050b90: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40050b94: 95 2a a0 18 sll %o2, 0x18, %o2
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050b98: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
singly_block = rtems_rfs_block_get_number (&map->doubly_buffer,
40050b9c: 94 12 80 03 or %o2, %g3, %o2
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050ba0: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
singly_block = rtems_rfs_block_get_number (&map->doubly_buffer,
40050ba4: 94 12 80 02 or %o2, %g2, %o2
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050ba8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
singly_block = rtems_rfs_block_get_number (&map->doubly_buffer,
40050bac: 94 12 80 01 or %o2, %g1, %o2
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050bb0: 40 00 01 f6 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40050bb4: d4 27 bf fc st %o2, [ %fp + -4 ]
<== NOT EXECUTED
40050bb8: 10 bf ff 7c b 400509a8 <rtems_rfs_block_map_grow+0x130>
<== NOT EXECUTED
40050bbc: b8 10 00 08 mov %o0, %i4
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050bc0: 82 02 e0 08 add %o3, 8, %g1
<== NOT EXECUTED
40050bc4: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
40050bc8: 82 06 40 01 add %i1, %g1, %g1
<== NOT EXECUTED
40050bcc: d4 00 60 04 ld [ %g1 + 4 ], %o2
<== NOT EXECUTED
40050bd0: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40050bd4: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
40050bd8: 40 00 01 ec call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40050bdc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40050be0: 10 bf ff 72 b 400509a8 <rtems_rfs_block_map_grow+0x130>
<== NOT EXECUTED
40050be4: b8 10 00 08 mov %o0, %i4
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->doubly_buffer,
40050be8: 82 05 60 08 add %l5, 8, %g1
<== NOT EXECUTED
40050bec: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
40050bf0: 82 06 40 01 add %i1, %g1, %g1
<== NOT EXECUTED
40050bf4: d4 00 60 04 ld [ %g1 + 4 ], %o2
<== NOT EXECUTED
40050bf8: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40050bfc: 92 10 00 12 mov %l2, %o1
<== NOT EXECUTED
40050c00: 40 00 01 e2 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40050c04: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050c08: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
40050c0c: 24 bf ff b8 ble,a 40050aec <rtems_rfs_block_map_grow+0x274>
<== NOT EXECUTED
40050c10: c2 06 60 4c ld [ %i1 + 0x4c ], %g1
<== NOT EXECUTED
rtems_rfs_group_bitmap_free (fs, false, singly_block);
40050c14: d4 07 bf fc ld [ %fp + -4 ], %o2
<== NOT EXECUTED
40050c18: 92 10 20 00 clr %o1
<== NOT EXECUTED
40050c1c: 40 00 14 6c call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
40050c20: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_group_bitmap_free (fs, false, block);
40050c24: d4 07 bf f8 ld [ %fp + -8 ], %o2
<== NOT EXECUTED
40050c28: 92 10 20 00 clr %o1
<== NOT EXECUTED
40050c2c: 40 00 14 68 call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
40050c30: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
return rc;
40050c34: 30 bf ff 84 b,a 40050a44 <rtems_rfs_block_map_grow+0x1cc>
<== NOT EXECUTED
printf ("rtems-rfs: block-map-grow: entry: blocks=%zd count=%" PRIu32 "\n",
40050c38: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40050c3c: 11 10 02 18 sethi %hi(0x40086000), %o0
<== NOT EXECUTED
40050c40: 7f ff ac 42 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40050c44: 90 12 21 b8 or %o0, 0x1b8, %o0 ! 400861b8 <MSDOS_DOT_NAME+0x90>
<== NOT EXECUTED
if ((map->size.count + blocks) >= rtems_rfs_fs_max_block_map_blocks (fs))
40050c48: 10 bf ff 14 b 40050898 <rtems_rfs_block_map_grow+0x20>
<== NOT EXECUTED
40050c4c: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
rtems_rfs_group_bitmap_free (fs, false, block);
40050c50: d4 07 bf f8 ld [ %fp + -8 ], %o2
<== NOT EXECUTED
40050c54: 92 10 20 00 clr %o1
<== NOT EXECUTED
40050c58: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40050c5c: 40 00 14 5c call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
40050c60: b0 10 00 1c mov %i4, %i0
<== NOT EXECUTED
}
40050c64: 81 c7 e0 08 ret
<== NOT EXECUTED
40050c68: 81 e8 00 00 restore
<== NOT EXECUTED
40050844 <rtems_rfs_block_map_next_block>:
{
40050844: 9d e3 bf 90 save %sp, -112, %sp
<== NOT EXECUTED
bpos.bno = map->bpos.bno + 1;
40050848: c2 06 60 10 ld [ %i1 + 0x10 ], %g1
<== NOT EXECUTED
4005084c: 82 00 60 01 inc %g1
<== NOT EXECUTED
bpos.boff = 0;
40050850: c0 27 bf f8 clr [ %fp + -8 ]
<== NOT EXECUTED
return rtems_rfs_block_map_find (fs, map, &bpos, block);
40050854: 96 10 00 1a mov %i2, %o3
<== NOT EXECUTED
bpos.bno = map->bpos.bno + 1;
40050858: c2 27 bf f4 st %g1, [ %fp + -12 ]
<== NOT EXECUTED
return rtems_rfs_block_map_find (fs, map, &bpos, block);
4005085c: 94 07 bf f4 add %fp, -12, %o2
<== NOT EXECUTED
bpos.block = 0;
40050860: c0 27 bf fc clr [ %fp + -4 ]
<== NOT EXECUTED
return rtems_rfs_block_map_find (fs, map, &bpos, block);
40050864: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40050868: 7f ff ff 80 call 40050668 <rtems_rfs_block_map_find>
<== NOT EXECUTED
4005086c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
}
40050870: 81 c7 e0 08 ret
<== NOT EXECUTED
40050874: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
40050320 <rtems_rfs_block_map_open>:
{
40050320: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
map->dirty = false;
40050324: c0 2e 80 00 clrb [ %i2 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_load (fs, inode);
40050328: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
map->inode = NULL;
4005032c: c0 26 a0 04 clr [ %i2 + 4 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_load (fs, inode);
40050330: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
* @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;
40050334: c0 26 a0 08 clr [ %i2 + 8 ]
<== NOT EXECUTED
{
40050338: ba 10 00 1a mov %i2, %i5
<== NOT EXECUTED
size->offset = 0;
4005033c: c0 26 a0 0c clr [ %i2 + 0xc ]
<== NOT EXECUTED
bpos->bno = 0;
40050340: c0 26 a0 10 clr [ %i2 + 0x10 ]
<== NOT EXECUTED
bpos->boff = 0;
40050344: c0 26 a0 14 clr [ %i2 + 0x14 ]
<== NOT EXECUTED
bpos->block = 0;
40050348: c0 26 a0 18 clr [ %i2 + 0x18 ]
<== NOT EXECUTED
handle->dirty = false;
4005034c: c0 2e a0 38 clrb [ %i2 + 0x38 ]
<== NOT EXECUTED
handle->bnum = 0;
40050350: c0 26 a0 3c clr [ %i2 + 0x3c ]
<== NOT EXECUTED
handle->buffer = NULL;
40050354: c0 26 a0 40 clr [ %i2 + 0x40 ]
<== NOT EXECUTED
handle->dirty = false;
40050358: c0 2e a0 44 clrb [ %i2 + 0x44 ]
<== NOT EXECUTED
handle->bnum = 0;
4005035c: c0 26 a0 48 clr [ %i2 + 0x48 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_load (fs, inode);
40050360: 40 00 17 63 call 400560ec <rtems_rfs_inode_load>
<== NOT EXECUTED
40050364: c0 26 a0 4c clr [ %i2 + 0x4c ]
<== NOT EXECUTED
if (rc > 0)
40050368: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
4005036c: 14 80 00 3d bg 40050460 <rtems_rfs_block_map_open+0x140>
<== NOT EXECUTED
40050370: 88 06 a0 24 add %i2, 0x24, %g4
<== NOT EXECUTED
40050374: de 06 60 0c ld [ %i1 + 0xc ], %o7
<== NOT EXECUTED
map->inode = inode;
40050378: f2 26 a0 04 st %i1, [ %i2 + 4 ]
<== NOT EXECUTED
4005037c: 82 03 e0 1c add %o7, 0x1c, %g1
<== NOT EXECUTED
40050380: b4 06 a0 38 add %i2, 0x38, %i2
<== NOT EXECUTED
40050384: f6 08 40 00 ldub [ %g1 ], %i3
<== NOT EXECUTED
40050388: c6 08 60 01 ldub [ %g1 + 1 ], %g3
<== NOT EXECUTED
4005038c: c4 08 60 02 ldub [ %g1 + 2 ], %g2
<== NOT EXECUTED
40050390: f8 08 60 03 ldub [ %g1 + 3 ], %i4
<== NOT EXECUTED
40050394: b7 2e e0 18 sll %i3, 0x18, %i3
<== NOT EXECUTED
40050398: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
4005039c: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
400503a0: 86 10 c0 1b or %g3, %i3, %g3
<== NOT EXECUTED
400503a4: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
400503a8: 84 17 00 02 or %i4, %g2, %g2
<== NOT EXECUTED
map->blocks[b] = rtems_rfs_inode_get_block (inode, b);
400503ac: c4 21 00 00 st %g2, [ %g4 ]
<== NOT EXECUTED
400503b0: 88 01 20 04 add %g4, 4, %g4
<== NOT EXECUTED
for (b = 0; b < RTEMS_RFS_INODE_BLOCKS; b++)
400503b4: 80 a6 80 04 cmp %i2, %g4
<== NOT EXECUTED
400503b8: 12 bf ff f3 bne 40050384 <rtems_rfs_block_map_open+0x64>
<== NOT EXECUTED
400503bc: 82 00 60 04 add %g1, 4, %g1
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
400503c0: c6 0b e0 0f ldub [ %o7 + 0xf ], %g3
<== NOT EXECUTED
400503c4: c8 0b e0 0c ldub [ %o7 + 0xc ], %g4
<== NOT EXECUTED
400503c8: c4 0b e0 0d ldub [ %o7 + 0xd ], %g2
<== NOT EXECUTED
400503cc: c2 0b e0 0e ldub [ %o7 + 0xe ], %g1
<== NOT EXECUTED
400503d0: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
400503d4: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
400503d8: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
400503dc: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
400503e0: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
400503e4: 82 10 c0 01 or %g3, %g1, %g1
<== NOT EXECUTED
map->size.count = rtems_rfs_inode_get_block_count (inode);
400503e8: c2 27 60 08 st %g1, [ %i5 + 8 ]
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->block_offset);
400503ec: c4 0b e0 0b ldub [ %o7 + 0xb ], %g2
<== NOT EXECUTED
400503f0: c2 0b e0 0a ldub [ %o7 + 0xa ], %g1
<== NOT EXECUTED
400503f4: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
map->size.offset = rtems_rfs_inode_get_block_offset (inode);
400503f8: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
400503fc: c2 27 60 0c st %g1, [ %i5 + 0xc ]
<== NOT EXECUTED
* @retval block The last map block number.
*/
static inline uint32_t
rtems_rfs_inode_get_last_map_block (rtems_rfs_inode_handle* handle)
{
return rtems_rfs_read_u32 (&handle->node->last_map_block);
40050400: c6 0b e0 33 ldub [ %o7 + 0x33 ], %g3
<== NOT EXECUTED
40050404: c8 0b e0 30 ldub [ %o7 + 0x30 ], %g4
<== NOT EXECUTED
40050408: c4 0b e0 31 ldub [ %o7 + 0x31 ], %g2
<== NOT EXECUTED
4005040c: c2 0b e0 32 ldub [ %o7 + 0x32 ], %g1
<== NOT EXECUTED
40050410: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
40050414: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40050418: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
4005041c: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
40050420: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
40050424: 82 10 c0 01 or %g3, %g1, %g1
<== NOT EXECUTED
map->last_map_block = rtems_rfs_inode_get_last_map_block (inode);
40050428: c2 27 60 1c st %g1, [ %i5 + 0x1c ]
<== NOT EXECUTED
*
*/
static inline uint32_t
rtems_rfs_inode_get_last_data_block (rtems_rfs_inode_handle* handle)
{
return rtems_rfs_read_u32 (&handle->node->last_data_block);
4005042c: c8 0b e0 34 ldub [ %o7 + 0x34 ], %g4
<== NOT EXECUTED
40050430: c4 0b e0 35 ldub [ %o7 + 0x35 ], %g2
<== NOT EXECUTED
40050434: c2 0b e0 36 ldub [ %o7 + 0x36 ], %g1
<== NOT EXECUTED
40050438: c6 0b e0 37 ldub [ %o7 + 0x37 ], %g3
<== NOT EXECUTED
4005043c: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
40050440: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40050444: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40050448: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
4005044c: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
40050450: 82 10 c0 01 or %g3, %g1, %g1
<== NOT EXECUTED
map->last_data_block = rtems_rfs_inode_get_last_data_block (inode);
40050454: c2 27 60 20 st %g1, [ %i5 + 0x20 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_unload (fs, inode, false);
40050458: 40 00 17 8b call 40056284 <rtems_rfs_inode_unload>
<== NOT EXECUTED
4005045c: 95 e8 20 00 restore %g0, 0, %o2
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40050460: 92 06 a0 38 add %i2, 0x38, %o1
<== NOT EXECUTED
40050464: 40 00 04 90 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40050468: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->dirty = false;
4005046c: c0 2e a0 38 clrb [ %i2 + 0x38 ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40050470: 92 06 a0 44 add %i2, 0x44, %o1
<== NOT EXECUTED
handle->bnum = 0;
40050474: c0 26 a0 3c clr [ %i2 + 0x3c ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40050478: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->buffer = NULL;
4005047c: c0 26 a0 40 clr [ %i2 + 0x40 ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40050480: 40 00 04 89 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40050484: b0 10 00 1c mov %i4, %i0
<== NOT EXECUTED
handle->dirty = false;
40050488: c0 2e a0 44 clrb [ %i2 + 0x44 ]
<== NOT EXECUTED
handle->bnum = 0;
4005048c: c0 26 a0 48 clr [ %i2 + 0x48 ]
<== NOT EXECUTED
handle->buffer = NULL;
40050490: c0 26 a0 4c clr [ %i2 + 0x4c ]
<== NOT EXECUTED
}
40050494: 81 c7 e0 08 ret
<== NOT EXECUTED
40050498: 81 e8 00 00 restore
<== NOT EXECUTED
400507cc <rtems_rfs_block_map_seek>:
{
400507cc: 9d e3 bf 90 save %sp, -112, %sp
<== NOT EXECUTED
400507d0: fa 06 20 08 ld [ %i0 + 8 ], %i5
<== NOT EXECUTED
return (bpos->bno * rtems_rfs_fs_block_size (fs)) + bpos->boff;
400507d4: c4 06 60 14 ld [ %i1 + 0x14 ], %g2
<== NOT EXECUTED
400507d8: c2 06 60 10 ld [ %i1 + 0x10 ], %g1
<== NOT EXECUTED
400507dc: 82 5f 40 01 smul %i5, %g1, %g1
<== NOT EXECUTED
400507e0: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
rtems_rfs_block_get_bpos (fs,
400507e4: 86 86 c0 01 addcc %i3, %g1, %g3
<== NOT EXECUTED
400507e8: 84 46 a0 00 addx %i2, 0, %g2
<== NOT EXECUTED
400507ec: b6 10 00 03 mov %g3, %i3
<== NOT EXECUTED
400507f0: b4 10 00 02 mov %g2, %i2
<== NOT EXECUTED
bpos->bno = pos / rtems_rfs_fs_block_size (fs);
400507f4: 90 10 00 02 mov %g2, %o0
<== NOT EXECUTED
400507f8: 92 10 00 03 mov %g3, %o1
<== NOT EXECUTED
400507fc: 96 10 00 1d mov %i5, %o3
<== NOT EXECUTED
40050800: 40 00 a5 f4 call 40079fd0 <__udivdi3>
<== NOT EXECUTED
40050804: 94 10 20 00 clr %o2
<== NOT EXECUTED
bpos->boff = pos % rtems_rfs_fs_block_size (fs);
40050808: 96 10 00 1d mov %i5, %o3
<== NOT EXECUTED
bpos->bno = pos / rtems_rfs_fs_block_size (fs);
4005080c: d2 27 bf f4 st %o1, [ %fp + -12 ]
<== NOT EXECUTED
bpos->boff = pos % rtems_rfs_fs_block_size (fs);
40050810: 94 10 20 00 clr %o2
<== NOT EXECUTED
40050814: 90 10 00 1a mov %i2, %o0
<== NOT EXECUTED
40050818: 40 00 a6 67 call 4007a1b4 <__umoddi3>
<== NOT EXECUTED
4005081c: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
return rtems_rfs_block_map_find (fs, map, &bpos, block);
40050820: 96 10 00 1c mov %i4, %o3
<== NOT EXECUTED
bpos->boff = pos % rtems_rfs_fs_block_size (fs);
40050824: d2 27 bf f8 st %o1, [ %fp + -8 ]
<== NOT EXECUTED
return rtems_rfs_block_map_find (fs, map, &bpos, block);
40050828: 94 07 bf f4 add %fp, -12, %o2
<== NOT EXECUTED
bpos->block = 0;
4005082c: c0 27 bf fc clr [ %fp + -4 ]
<== NOT EXECUTED
40050830: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40050834: 7f ff ff 8d call 40050668 <rtems_rfs_block_map_find>
<== NOT EXECUTED
40050838: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
}
4005083c: 81 c7 e0 08 ret
<== NOT EXECUTED
40050840: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
40050c6c <rtems_rfs_block_map_shrink>:
int
rtems_rfs_block_map_shrink (rtems_rfs_file_system* fs,
rtems_rfs_block_map* map,
size_t blocks)
{
40050c6c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BLOCK_MAP_SHRINK))
40050c70: 90 10 20 00 clr %o0
<== NOT EXECUTED
40050c74: 40 00 1c cb call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40050c78: 13 00 00 10 sethi %hi(0x4000), %o1
<== NOT EXECUTED
40050c7c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050c80: 32 80 00 a3 bne,a 40050f0c <rtems_rfs_block_map_shrink+0x2a0>
<== NOT EXECUTED
40050c84: d4 06 60 08 ld [ %i1 + 8 ], %o2
<== NOT EXECUTED
printf ("rtems-rfs: block-map-shrink: entry: blocks=%zd count=%" PRIu32 "\n",
blocks, map->size.count);
if (map->size.count == 0)
40050c88: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40050c8c: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40050c90: 02 80 00 9a be 40050ef8 <rtems_rfs_block_map_shrink+0x28c>
<== NOT EXECUTED
40050c94: 80 a0 40 1a cmp %g1, %i2
<== NOT EXECUTED
40050c98: 18 80 00 9b bgu 40050f04 <rtems_rfs_block_map_shrink+0x298>
<== NOT EXECUTED
40050c9c: b6 10 00 01 mov %g1, %i3
<== NOT EXECUTED
return 0;
if (blocks > map->size.count)
blocks = map->size.count;
while (blocks)
40050ca0: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
40050ca4: 02 80 00 8e be 40050edc <rtems_rfs_block_map_shrink+0x270>
<== NOT EXECUTED
40050ca8: a2 06 60 44 add %i1, 0x44, %l1
<== NOT EXECUTED
doubly_singly);
/*
* Read the singly indirect table and get the block number.
*/
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050cac: a0 06 60 38 add %i1, 0x38, %l0
<== NOT EXECUTED
if (rc > 0)
return rc;
map->last_map_block = singly;
rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->doubly_buffer,
40050cb0: a6 06 60 4c add %i1, 0x4c, %l3
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->singly_buffer,
40050cb4: a4 06 60 40 add %i1, 0x40, %l2
<== NOT EXECUTED
if (rc > 0)
return rc;
map->size.count--;
map->size.offset = 0;
map->last_data_block = block_to_free;
map->dirty = true;
40050cb8: 10 80 00 13 b 40050d04 <rtems_rfs_block_map_shrink+0x98>
<== NOT EXECUTED
40050cbc: b4 10 20 01 mov 1, %i2
<== NOT EXECUTED
40050cc0: 82 06 40 01 add %i1, %g1, %g1
<== NOT EXECUTED
block_to_free = map->blocks[block];
40050cc4: fa 00 60 20 ld [ %g1 + 0x20 ], %i5
<== NOT EXECUTED
map->blocks[block] = 0;
40050cc8: c0 20 60 20 clr [ %g1 + 0x20 ]
<== NOT EXECUTED
rc = rtems_rfs_group_bitmap_free (fs, false, block_to_free);
40050ccc: 94 10 00 1d mov %i5, %o2
<== NOT EXECUTED
40050cd0: 92 10 20 00 clr %o1
<== NOT EXECUTED
40050cd4: 40 00 14 3e call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
40050cd8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050cdc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050ce0: 14 80 00 61 bg 40050e64 <rtems_rfs_block_map_shrink+0x1f8>
<== NOT EXECUTED
40050ce4: b6 86 ff ff addcc %i3, -1, %i3
<== NOT EXECUTED
map->size.count--;
40050ce8: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40050cec: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
map->size.offset = 0;
40050cf0: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
map->size.count--;
40050cf4: c2 26 60 08 st %g1, [ %i1 + 8 ]
<== NOT EXECUTED
map->last_data_block = block_to_free;
40050cf8: fa 26 60 20 st %i5, [ %i1 + 0x20 ]
<== NOT EXECUTED
while (blocks)
40050cfc: 02 80 00 8a be 40050f24 <rtems_rfs_block_map_shrink+0x2b8>
<== NOT EXECUTED
40050d00: f4 2e 40 00 stb %i2, [ %i1 ]
<== NOT EXECUTED
block = map->size.count - 1;
40050d04: 84 00 7f ff add %g1, -1, %g2
<== NOT EXECUTED
if (block < RTEMS_RFS_INODE_BLOCKS)
40050d08: 80 a0 a0 04 cmp %g2, 4
<== NOT EXECUTED
40050d0c: 28 bf ff ed bleu,a 40050cc0 <rtems_rfs_block_map_shrink+0x54>
<== NOT EXECUTED
40050d10: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
direct = block % fs->blocks_per_block;
40050d14: c6 06 20 34 ld [ %i0 + 0x34 ], %g3
<== NOT EXECUTED
if (block < fs->block_map_singly_blocks)
40050d18: c8 06 20 38 ld [ %i0 + 0x38 ], %g4
<== NOT EXECUTED
direct = block % fs->blocks_per_block;
40050d1c: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40050d20: 01 00 00 00 nop
<== NOT EXECUTED
40050d24: 01 00 00 00 nop
<== NOT EXECUTED
40050d28: 01 00 00 00 nop
<== NOT EXECUTED
40050d2c: aa 70 80 03 udiv %g2, %g3, %l5
<== NOT EXECUTED
if (block < fs->block_map_singly_blocks)
40050d30: 80 a1 00 02 cmp %g4, %g2
<== NOT EXECUTED
direct = block % fs->blocks_per_block;
40050d34: ac 5d 40 03 smul %l5, %g3, %l6
<== NOT EXECUTED
if (block < fs->block_map_singly_blocks)
40050d38: 18 80 00 4d bgu 40050e6c <rtems_rfs_block_map_shrink+0x200>
<== NOT EXECUTED
40050d3c: ac 20 80 16 sub %g2, %l6, %l6
<== NOT EXECUTED
else if (block < fs->block_map_doubly_blocks)
40050d40: c8 06 20 3c ld [ %i0 + 0x3c ], %g4
<== NOT EXECUTED
40050d44: 80 a1 00 02 cmp %g4, %g2
<== NOT EXECUTED
40050d48: 08 80 00 77 bleu 40050f24 <rtems_rfs_block_map_shrink+0x2b8>
<== NOT EXECUTED
40050d4c: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
doubly = singly / fs->blocks_per_block;
40050d50: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40050d54: 01 00 00 00 nop
<== NOT EXECUTED
40050d58: 01 00 00 00 nop
<== NOT EXECUTED
40050d5c: 01 00 00 00 nop
<== NOT EXECUTED
40050d60: ae 75 40 03 udiv %l5, %g3, %l7
<== NOT EXECUTED
doubly_singly = singly % fs->blocks_per_block;
40050d64: 86 5d c0 03 smul %l7, %g3, %g3
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->doubly_buffer,
40050d68: 82 05 e0 08 add %l7, 8, %g1
<== NOT EXECUTED
40050d6c: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
40050d70: 82 06 40 01 add %i1, %g1, %g1
<== NOT EXECUTED
40050d74: d4 00 60 04 ld [ %g1 + 4 ], %o2
<== NOT EXECUTED
doubly_singly = singly % fs->blocks_per_block;
40050d78: aa 25 40 03 sub %l5, %g3, %l5
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->doubly_buffer,
40050d7c: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
40050d80: 40 00 01 82 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40050d84: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050d88: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050d8c: 14 80 00 36 bg 40050e64 <rtems_rfs_block_map_shrink+0x1f8>
<== NOT EXECUTED
40050d90: 85 2d 60 02 sll %l5, 2, %g2
<== NOT EXECUTED
singly = rtems_rfs_block_get_number (&map->doubly_buffer,
40050d94: c2 06 60 4c ld [ %i1 + 0x4c ], %g1
<== NOT EXECUTED
40050d98: c6 00 60 1c ld [ %g1 + 0x1c ], %g3
<== NOT EXECUTED
40050d9c: e8 08 c0 02 ldub [ %g3 + %g2 ], %l4
<== NOT EXECUTED
40050da0: 82 00 c0 02 add %g3, %g2, %g1
<== NOT EXECUTED
40050da4: c6 08 60 03 ldub [ %g1 + 3 ], %g3
<== NOT EXECUTED
40050da8: c4 08 60 01 ldub [ %g1 + 1 ], %g2
<== NOT EXECUTED
40050dac: c2 08 60 02 ldub [ %g1 + 2 ], %g1
<== NOT EXECUTED
40050db0: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40050db4: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40050db8: a9 2d 20 18 sll %l4, 0x18, %l4
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050dbc: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
singly = rtems_rfs_block_get_number (&map->doubly_buffer,
40050dc0: a8 15 00 03 or %l4, %g3, %l4
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050dc4: 92 10 00 10 mov %l0, %o1
<== NOT EXECUTED
singly = rtems_rfs_block_get_number (&map->doubly_buffer,
40050dc8: a8 15 00 02 or %l4, %g2, %l4
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050dcc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
singly = rtems_rfs_block_get_number (&map->doubly_buffer,
40050dd0: a8 15 00 01 or %l4, %g1, %l4
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050dd4: 40 00 01 6d call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40050dd8: 94 10 00 14 mov %l4, %o2
<== NOT EXECUTED
if (rc > 0)
40050ddc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050de0: 14 80 00 21 bg 40050e64 <rtems_rfs_block_map_shrink+0x1f8>
<== NOT EXECUTED
40050de4: 85 2d a0 02 sll %l6, 2, %g2
<== NOT EXECUTED
block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,
40050de8: c2 06 60 40 ld [ %i1 + 0x40 ], %g1
<== NOT EXECUTED
40050dec: c6 00 60 1c ld [ %g1 + 0x1c ], %g3
<== NOT EXECUTED
40050df0: 82 00 c0 02 add %g3, %g2, %g1
<== NOT EXECUTED
40050df4: fa 08 c0 02 ldub [ %g3 + %g2 ], %i5
<== NOT EXECUTED
40050df8: c6 08 60 03 ldub [ %g1 + 3 ], %g3
<== NOT EXECUTED
40050dfc: c4 08 60 01 ldub [ %g1 + 1 ], %g2
<== NOT EXECUTED
40050e00: c2 08 60 02 ldub [ %g1 + 2 ], %g1
<== NOT EXECUTED
40050e04: bb 2f 60 18 sll %i5, 0x18, %i5
<== NOT EXECUTED
40050e08: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40050e0c: ba 17 40 03 or %i5, %g3, %i5
<== NOT EXECUTED
40050e10: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40050e14: ba 17 40 02 or %i5, %g2, %i5
<== NOT EXECUTED
if (direct == 0)
40050e18: 80 a5 a0 00 cmp %l6, 0
<== NOT EXECUTED
40050e1c: 12 bf ff ac bne 40050ccc <rtems_rfs_block_map_shrink+0x60>
<== NOT EXECUTED
40050e20: ba 17 40 01 or %i5, %g1, %i5
<== NOT EXECUTED
rc = rtems_rfs_group_bitmap_free (fs, false, singly);
40050e24: 94 10 00 14 mov %l4, %o2
<== NOT EXECUTED
40050e28: 92 10 20 00 clr %o1
<== NOT EXECUTED
40050e2c: 40 00 13 e8 call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
40050e30: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050e34: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050e38: 14 80 00 0b bg 40050e64 <rtems_rfs_block_map_shrink+0x1f8>
<== NOT EXECUTED
40050e3c: 98 10 00 15 mov %l5, %o4
<== NOT EXECUTED
map->last_map_block = singly;
40050e40: e8 26 60 1c st %l4, [ %i1 + 0x1c ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->doubly_buffer,
40050e44: 96 10 00 17 mov %l7, %o3
<== NOT EXECUTED
40050e48: 94 10 00 13 mov %l3, %o2
<== NOT EXECUTED
40050e4c: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40050e50: 7f ff fc d7 call 400501ac <rtems_rfs_block_map_indirect_shrink.isra.12>
<== NOT EXECUTED
40050e54: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc)
40050e58: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050e5c: 02 bf ff 9d be 40050cd0 <rtems_rfs_block_map_shrink+0x64>
<== NOT EXECUTED
40050e60: 94 10 00 1d mov %i5, %o2
<== 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;
}
40050e64: 81 c7 e0 08 ret
<== NOT EXECUTED
40050e68: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &map->singly_buffer,
40050e6c: 82 05 60 08 add %l5, 8, %g1
<== NOT EXECUTED
40050e70: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
40050e74: 82 06 40 01 add %i1, %g1, %g1
<== NOT EXECUTED
40050e78: d4 00 60 04 ld [ %g1 + 4 ], %o2
<== NOT EXECUTED
40050e7c: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40050e80: 92 10 00 10 mov %l0, %o1
<== NOT EXECUTED
40050e84: 40 00 01 41 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40050e88: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40050e8c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40050e90: 14 bf ff f5 bg 40050e64 <rtems_rfs_block_map_shrink+0x1f8>
<== NOT EXECUTED
40050e94: 85 2d a0 02 sll %l6, 2, %g2
<== NOT EXECUTED
block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,
40050e98: c2 06 60 40 ld [ %i1 + 0x40 ], %g1
<== NOT EXECUTED
40050e9c: c6 00 60 1c ld [ %g1 + 0x1c ], %g3
<== NOT EXECUTED
40050ea0: 82 00 c0 02 add %g3, %g2, %g1
<== NOT EXECUTED
40050ea4: fa 08 c0 02 ldub [ %g3 + %g2 ], %i5
<== NOT EXECUTED
40050ea8: c6 08 60 03 ldub [ %g1 + 3 ], %g3
<== NOT EXECUTED
40050eac: c4 08 60 01 ldub [ %g1 + 1 ], %g2
<== NOT EXECUTED
40050eb0: c2 08 60 02 ldub [ %g1 + 2 ], %g1
<== NOT EXECUTED
40050eb4: bb 2f 60 18 sll %i5, 0x18, %i5
<== NOT EXECUTED
40050eb8: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40050ebc: ba 17 40 03 or %i5, %g3, %i5
<== NOT EXECUTED
40050ec0: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40050ec4: ba 17 40 02 or %i5, %g2, %i5
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->singly_buffer,
40050ec8: 98 10 00 16 mov %l6, %o4
<== NOT EXECUTED
block_to_free = rtems_rfs_block_get_number (&map->singly_buffer,
40050ecc: ba 17 40 01 or %i5, %g1, %i5
<== NOT EXECUTED
rc = rtems_rfs_block_map_indirect_shrink (fs, map, &map->singly_buffer,
40050ed0: 96 10 00 15 mov %l5, %o3
<== NOT EXECUTED
40050ed4: 10 bf ff de b 40050e4c <rtems_rfs_block_map_shrink+0x1e0>
<== NOT EXECUTED
40050ed8: 94 10 00 12 mov %l2, %o2
<== NOT EXECUTED
if (rtems_rfs_block_pos_past_end (&map->bpos, &map->size))
40050edc: c4 06 60 10 ld [ %i1 + 0x10 ], %g2
<== NOT EXECUTED
40050ee0: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40050ee4: 08 80 00 25 bleu 40050f78 <rtems_rfs_block_map_shrink+0x30c>
<== NOT EXECUTED
40050ee8: 86 00 7f ff add %g1, -1, %g3
<== NOT EXECUTED
40050eec: 80 a0 c0 02 cmp %g3, %g2
<== NOT EXECUTED
40050ef0: 22 80 00 1c be,a 40050f60 <rtems_rfs_block_map_shrink+0x2f4>
<== NOT EXECUTED
40050ef4: c4 06 60 0c ld [ %i1 + 0xc ], %g2
<== NOT EXECUTED
return 0;
40050ef8: 90 10 20 00 clr %o0
<== NOT EXECUTED
}
40050efc: 81 c7 e0 08 ret
<== NOT EXECUTED
40050f00: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
40050f04: 10 bf ff 67 b 40050ca0 <rtems_rfs_block_map_shrink+0x34>
<== NOT EXECUTED
40050f08: b6 10 00 1a mov %i2, %i3
<== NOT EXECUTED
printf ("rtems-rfs: block-map-shrink: entry: blocks=%zd count=%" PRIu32 "\n",
40050f0c: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40050f10: 11 10 02 18 sethi %hi(0x40086000), %o0
<== NOT EXECUTED
40050f14: 7f ff ab 8d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40050f18: 90 12 21 f0 or %o0, 0x1f0, %o0 ! 400861f0 <MSDOS_DOT_NAME+0xc8>
<== NOT EXECUTED
if (map->size.count == 0)
40050f1c: 10 bf ff 5c b 40050c8c <rtems_rfs_block_map_shrink+0x20>
<== NOT EXECUTED
40050f20: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
if (map->size.count == 0)
40050f24: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40050f28: 32 bf ff ee bne,a 40050ee0 <rtems_rfs_block_map_shrink+0x274>
<== NOT EXECUTED
40050f2c: c4 06 60 10 ld [ %i1 + 0x10 ], %g2
<== NOT EXECUTED
map->last_map_block = 0;
40050f30: c0 26 60 1c clr [ %i1 + 0x1c ]
<== NOT EXECUTED
map->last_data_block = 0;
40050f34: c0 26 60 20 clr [ %i1 + 0x20 ]
<== NOT EXECUTED
40050f38: c4 06 60 0c ld [ %i1 + 0xc ], %g2
<== NOT EXECUTED
rtems_rfs_block_size_get_bpos (&map->size, &map->bpos);
40050f3c: c2 26 60 10 st %g1, [ %i1 + 0x10 ]
<== NOT EXECUTED
40050f40: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40050f44: c4 26 60 14 st %g2, [ %i1 + 0x14 ]
<== NOT EXECUTED
40050f48: 02 bf ff ec be 40050ef8 <rtems_rfs_block_map_shrink+0x28c>
<== NOT EXECUTED
40050f4c: c0 26 60 18 clr [ %i1 + 0x18 ]
<== NOT EXECUTED
40050f50: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
return 0;
40050f54: 90 10 20 00 clr %o0
<== NOT EXECUTED
rtems_rfs_block_size_get_bpos (&map->size, &map->bpos);
40050f58: 10 bf ff c3 b 40050e64 <rtems_rfs_block_map_shrink+0x1f8>
<== NOT EXECUTED
40050f5c: c2 26 60 10 st %g1, [ %i1 + 0x10 ]
<== NOT EXECUTED
if (rtems_rfs_block_pos_past_end (&map->bpos, &map->size))
40050f60: c6 06 60 14 ld [ %i1 + 0x14 ], %g3
<== NOT EXECUTED
40050f64: 80 a0 c0 02 cmp %g3, %g2
<== NOT EXECUTED
40050f68: 38 bf ff f6 bgu,a 40050f40 <rtems_rfs_block_map_shrink+0x2d4>
<== NOT EXECUTED
40050f6c: c2 26 60 10 st %g1, [ %i1 + 0x10 ]
<== NOT EXECUTED
return 0;
40050f70: 10 bf ff e3 b 40050efc <rtems_rfs_block_map_shrink+0x290>
<== NOT EXECUTED
40050f74: 90 10 20 00 clr %o0
<== NOT EXECUTED
40050f78: 10 bf ff f1 b 40050f3c <rtems_rfs_block_map_shrink+0x2d0>
<== NOT EXECUTED
40050f7c: c4 06 60 0c ld [ %i1 + 0xc ], %g2
<== NOT EXECUTED
4005bf80 <rtems_rfs_buffer_bdbuf_release>:
int
rtems_rfs_buffer_bdbuf_release (rtems_rfs_buffer* buffer,
bool modified)
{
4005bf80: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
rtems_status_code sc;
int rc = 0;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_RELEASE))
4005bf84: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005bf88: 7f ff f0 06 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005bf8c: 92 10 20 40 mov 0x40, %o1
<== NOT EXECUTED
4005bf90: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005bf94: 02 80 00 0b be 4005bfc0 <rtems_rfs_buffer_bdbuf_release+0x40>
<== NOT EXECUTED
4005bf98: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
printf ("rtems-rfs: bdbuf-release: block=%" PRIuPTR " bdbuf=%" PRIu32 " %s\n",
4005bf9c: d2 06 20 34 ld [ %i0 + 0x34 ], %o1
<== NOT EXECUTED
4005bfa0: 12 80 00 18 bne 4005c000 <rtems_rfs_buffer_bdbuf_release+0x80>
<== NOT EXECUTED
4005bfa4: d4 06 20 18 ld [ %i0 + 0x18 ], %o2
<== NOT EXECUTED
4005bfa8: 17 10 01 fa sethi %hi(0x4007e800), %o3
<== NOT EXECUTED
4005bfac: 96 12 e1 10 or %o3, 0x110, %o3 ! 4007e910 <suffixes+0x320>
<== NOT EXECUTED
4005bfb0: 11 10 02 24 sethi %hi(0x40089000), %o0
<== NOT EXECUTED
4005bfb4: 7f ff 7f 65 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005bfb8: 90 12 20 c8 or %o0, 0xc8, %o0 ! 400890c8 <codepage_valid_char_map+0x110>
<== NOT EXECUTED
((intptr_t) buffer->user),
buffer->block, modified ? "(modified)" : "");
if (modified)
4005bfbc: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
4005bfc0: 02 80 00 09 be 4005bfe4 <rtems_rfs_buffer_bdbuf_release+0x64>
<== NOT EXECUTED
4005bfc4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
sc = rtems_bdbuf_release_modified (buffer);
4005bfc8: 7f fe ab 27 call 40006c64 <rtems_bdbuf_release_modified>
<== NOT EXECUTED
4005bfcc: 01 00 00 00 nop
<== NOT EXECUTED
#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;
4005bfd0: 80 a0 00 08 cmp %g0, %o0
<== NOT EXECUTED
4005bfd4: b0 40 3f ff addx %g0, -1, %i0
<== NOT EXECUTED
4005bfd8: b0 0e 3f fb and %i0, -5, %i0
<== NOT EXECUTED
}
return rc;
}
4005bfdc: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bfe0: 91 ee 20 05 restore %i0, 5, %o0
<== NOT EXECUTED
sc = rtems_bdbuf_release (buffer);
4005bfe4: 7f fe aa da call 40006b4c <rtems_bdbuf_release>
<== NOT EXECUTED
4005bfe8: 01 00 00 00 nop
<== NOT EXECUTED
rc = EIO;
4005bfec: 80 a0 00 08 cmp %g0, %o0
<== NOT EXECUTED
4005bff0: b0 40 3f ff addx %g0, -1, %i0
<== NOT EXECUTED
4005bff4: b0 0e 3f fb and %i0, -5, %i0
<== NOT EXECUTED
}
4005bff8: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bffc: 91 ee 20 05 restore %i0, 5, %o0
<== NOT EXECUTED
printf ("rtems-rfs: bdbuf-release: block=%" PRIuPTR " bdbuf=%" PRIu32 " %s\n",
4005c000: 17 10 02 24 sethi %hi(0x40089000), %o3
<== NOT EXECUTED
4005c004: 10 bf ff eb b 4005bfb0 <rtems_rfs_buffer_bdbuf_release+0x30>
<== NOT EXECUTED
4005c008: 96 12 e0 b8 or %o3, 0xb8, %o3 ! 400890b8 <codepage_valid_char_map+0x100>
<== NOT EXECUTED
4005bf30 <rtems_rfs_buffer_bdbuf_request>:
int
rtems_rfs_buffer_bdbuf_request (rtems_rfs_file_system* fs,
rtems_rfs_buffer_block block,
bool read,
rtems_rfs_buffer** buffer)
{
4005bf30: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
4005bf34: d0 06 20 10 ld [ %i0 + 0x10 ], %o0
<== NOT EXECUTED
rtems_status_code sc;
int rc = 0;
if (read)
sc = rtems_bdbuf_read (rtems_rfs_fs_device (fs), block, buffer);
4005bf38: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
if (read)
4005bf3c: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
4005bf40: 02 80 00 09 be 4005bf64 <rtems_rfs_buffer_bdbuf_request+0x34>
<== NOT EXECUTED
4005bf44: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
sc = rtems_bdbuf_read (rtems_rfs_fs_device (fs), block, buffer);
4005bf48: 7f fe aa 78 call 40006928 <rtems_bdbuf_read>
<== NOT EXECUTED
4005bf4c: 01 00 00 00 nop
<== NOT EXECUTED
int rc = 0;
4005bf50: 80 a0 00 08 cmp %g0, %o0
<== NOT EXECUTED
4005bf54: b0 60 20 00 subx %g0, 0, %i0
<== NOT EXECUTED
#endif
rc = EIO;
}
return rc;
}
4005bf58: b0 0e 20 05 and %i0, 5, %i0
<== NOT EXECUTED
4005bf5c: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bf60: 81 e8 00 00 restore
<== NOT EXECUTED
sc = rtems_bdbuf_get (rtems_rfs_fs_device (fs), block, buffer);
4005bf64: 7f fe aa 31 call 40006828 <rtems_bdbuf_get>
<== NOT EXECUTED
4005bf68: 01 00 00 00 nop
<== NOT EXECUTED
int rc = 0;
4005bf6c: 80 a0 00 08 cmp %g0, %o0
<== NOT EXECUTED
4005bf70: b0 60 20 00 subx %g0, 0, %i0
<== NOT EXECUTED
}
4005bf74: b0 0e 20 05 and %i0, 5, %i0
<== NOT EXECUTED
4005bf78: 81 c7 e0 08 ret
<== NOT EXECUTED
4005bf7c: 81 e8 00 00 restore
<== NOT EXECUTED
40051a94 <rtems_rfs_buffer_close>:
{
40051a94: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))
40051a98: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051a9c: 92 10 20 10 mov 0x10, %o1
<== NOT EXECUTED
40051aa0: 40 00 19 40 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051aa4: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
40051aa8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051aac: 12 80 00 2f bne 40051b68 <rtems_rfs_buffer_close+0xd4>
<== NOT EXECUTED
40051ab0: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
rc = rtems_rfs_buffer_setblksize (fs, rtems_rfs_fs_media_block_size (fs));
40051ab4: c2 07 60 10 ld [ %i5 + 0x10 ], %g1
<== NOT EXECUTED
40051ab8: d2 00 60 20 ld [ %g1 + 0x20 ], %o1
<== NOT EXECUTED
40051abc: 7f ff ff b5 call 40051990 <rtems_rfs_buffer_setblksize>
<== NOT EXECUTED
40051ac0: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))
40051ac4: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40051ac8: 14 80 00 1b bg 40051b34 <rtems_rfs_buffer_close+0xa0>
<== NOT EXECUTED
40051acc: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (close (fs->device) < 0)
40051ad0: 7f fe e6 27 call 4000b36c <close>
<== NOT EXECUTED
40051ad4: d0 07 60 0c ld [ %i5 + 0xc ], %o0
<== NOT EXECUTED
40051ad8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051adc: 06 80 00 04 bl 40051aec <rtems_rfs_buffer_close+0x58>
<== NOT EXECUTED
40051ae0: 01 00 00 00 nop
<== NOT EXECUTED
}
40051ae4: 81 c7 e0 08 ret
<== NOT EXECUTED
40051ae8: 81 e8 00 00 restore
<== NOT EXECUTED
rc = errno;
40051aec: 40 00 2b 8a call 4005c914 <__errno>
<== NOT EXECUTED
40051af0: 01 00 00 00 nop
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))
40051af4: 92 10 20 10 mov 0x10, %o1 ! 10 <_TLS_Alignment+0xf>
<== NOT EXECUTED
rc = errno;
40051af8: f0 02 00 00 ld [ %o0 ], %i0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))
40051afc: 40 00 19 29 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051b00: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051b04: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051b08: 02 80 00 09 be 40051b2c <rtems_rfs_buffer_close+0x98>
<== NOT EXECUTED
40051b0c: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: buffer-close: file close failed: %d: %s\n",
40051b10: 40 00 4a a4 call 400645a0 <strerror>
<== NOT EXECUTED
40051b14: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40051b18: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
40051b1c: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40051b20: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051b24: 7f ff a8 89 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051b28: 90 12 23 38 or %o0, 0x338, %o0 ! 40086738 <MSDOS_DOT_NAME+0x610>
<== NOT EXECUTED
}
40051b2c: 81 c7 e0 08 ret
<== NOT EXECUTED
40051b30: 81 e8 00 00 restore
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_CLOSE))
40051b34: 40 00 19 1b call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051b38: 92 10 20 10 mov 0x10, %o1
<== NOT EXECUTED
40051b3c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051b40: 02 bf ff e4 be 40051ad0 <rtems_rfs_buffer_close+0x3c>
<== NOT EXECUTED
40051b44: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: buffer-close: set media block size failed: %d: %s\n",
40051b48: 40 00 4a 96 call 400645a0 <strerror>
<== NOT EXECUTED
40051b4c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40051b50: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
40051b54: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40051b58: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051b5c: 7f ff a8 7b call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051b60: 90 12 22 f8 or %o0, 0x2f8, %o0 ! 400866f8 <MSDOS_DOT_NAME+0x5d0>
<== NOT EXECUTED
40051b64: 30 bf ff db b,a 40051ad0 <rtems_rfs_buffer_close+0x3c>
<== NOT EXECUTED
printf ("rtems-rfs: buffer-close: closing\n");
40051b68: 7f ff a8 87 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
40051b6c: 90 12 22 d0 or %o0, 0x2d0, %o0
<== NOT EXECUTED
rc = rtems_rfs_buffer_setblksize (fs, rtems_rfs_fs_media_block_size (fs));
40051b70: 10 bf ff d2 b 40051ab8 <rtems_rfs_buffer_close+0x24>
<== NOT EXECUTED
40051b74: c2 07 60 10 ld [ %i5 + 0x10 ], %g1
<== NOT EXECUTED
400516a4 <rtems_rfs_buffer_handle_release>:
if (rtems_rfs_buffer_handle_has_block (handle))
400516a4: c2 02 60 08 ld [ %o1 + 8 ], %g1
<== NOT EXECUTED
400516a8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400516ac: 02 80 00 05 be 400516c0 <rtems_rfs_buffer_handle_release+0x1c>
<== NOT EXECUTED
400516b0: 01 00 00 00 nop
<== NOT EXECUTED
400516b4: 82 13 c0 00 mov %o7, %g1
<== NOT EXECUTED
400516b8: 7f ff fe a5 call 4005114c <rtems_rfs_buffer_handle_release.part.2>
<== NOT EXECUTED
400516bc: 9e 10 40 00 mov %g1, %o7
<== NOT EXECUTED
}
400516c0: 81 c3 e0 08 retl
<== NOT EXECUTED
400516c4: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051388 <rtems_rfs_buffer_handle_request>:
{
40051388: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (handle))
4005138c: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40051390: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40051394: 02 80 00 1b be 40051400 <rtems_rfs_buffer_handle_request+0x78>
<== NOT EXECUTED
40051398: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
if (block && (rtems_rfs_buffer_bnum (handle) == block))
4005139c: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
400513a0: 02 80 00 06 be 400513b8 <rtems_rfs_buffer_handle_request+0x30>
<== NOT EXECUTED
400513a4: 90 10 20 00 clr %o0
<== NOT EXECUTED
400513a8: c2 06 60 04 ld [ %i1 + 4 ], %g1
<== NOT EXECUTED
400513ac: 80 a0 40 1a cmp %g1, %i2
<== NOT EXECUTED
400513b0: 02 80 00 7a be 40051598 <rtems_rfs_buffer_handle_request+0x210>
<== NOT EXECUTED
400513b4: 01 00 00 00 nop
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))
400513b8: 40 00 1a fa call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400513bc: 92 10 21 00 mov 0x100, %o1 ! 100 <_TLS_Alignment+0xff>
<== NOT EXECUTED
400513c0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400513c4: 32 80 00 4f bne,a 40051500 <rtems_rfs_buffer_handle_request+0x178>
<== NOT EXECUTED
400513c8: d2 06 60 04 ld [ %i1 + 4 ], %o1
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (handle))
400513cc: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
400513d0: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400513d4: 22 80 00 0a be,a 400513fc <rtems_rfs_buffer_handle_request+0x74>
<== NOT EXECUTED
400513d8: c0 2e 40 00 clrb [ %i1 ]
<== NOT EXECUTED
400513dc: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
400513e0: 7f ff ff 5b call 4005114c <rtems_rfs_buffer_handle_release.part.2>
<== NOT EXECUTED
400513e4: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
if (rc > 0)
400513e8: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400513ec: 24 80 00 04 ble,a 400513fc <rtems_rfs_buffer_handle_request+0x74>
<== NOT EXECUTED
400513f0: c0 2e 40 00 clrb [ %i1 ]
<== NOT EXECUTED
}
400513f4: 81 c7 e0 08 ret
<== NOT EXECUTED
400513f8: 81 e8 00 00 restore
<== NOT EXECUTED
handle->bnum = 0;
400513fc: c0 26 60 04 clr [ %i1 + 4 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))
40051400: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051404: 40 00 1a e7 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051408: 92 10 21 00 mov 0x100, %o1
<== NOT EXECUTED
4005140c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051410: 32 80 00 59 bne,a 40051574 <rtems_rfs_buffer_handle_request+0x1ec>
<== NOT EXECUTED
40051414: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
if (fs->buffers_count)
40051418: c2 07 60 50 ld [ %i5 + 0x50 ], %g1
<== NOT EXECUTED
4005141c: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40051420: 12 80 00 41 bne 40051524 <rtems_rfs_buffer_handle_request+0x19c>
<== NOT EXECUTED
40051424: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
if (!rtems_rfs_fs_no_local_cache (fs) &&
40051428: c4 07 40 00 ld [ %i5 ], %g2
<== NOT EXECUTED
4005142c: 80 88 a0 02 btst 2, %g2
<== NOT EXECUTED
40051430: 12 80 00 26 bne 400514c8 <rtems_rfs_buffer_handle_request+0x140>
<== NOT EXECUTED
40051434: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40051438: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4005143c: 22 80 00 69 be,a 400515e0 <rtems_rfs_buffer_handle_request+0x258>
<== NOT EXECUTED
40051440: c2 07 60 60 ld [ %i5 + 0x60 ], %g1
<== NOT EXECUTED
rtems_rfs_buffer_refs_up (handle);
40051444: c4 00 60 30 ld [ %g1 + 0x30 ], %g2
<== NOT EXECUTED
old_last = tail->previous;
40051448: c6 07 60 4c ld [ %i5 + 0x4c ], %g3
<== NOT EXECUTED
return &the_chain->Tail.Node;
4005144c: 88 07 60 48 add %i5, 0x48, %g4
<== NOT EXECUTED
40051450: 84 00 a0 01 inc %g2
<== NOT EXECUTED
the_node->next = tail;
40051454: c8 20 40 00 st %g4, [ %g1 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))
40051458: 90 10 20 00 clr %o0
<== NOT EXECUTED
rtems_rfs_buffer_refs_up (handle);
4005145c: c4 20 60 30 st %g2, [ %g1 + 0x30 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))
40051460: 92 10 21 00 mov 0x100, %o1
<== NOT EXECUTED
tail->previous = the_node;
40051464: c2 27 60 4c st %g1, [ %i5 + 0x4c ]
<== NOT EXECUTED
old_last->next = the_node;
40051468: c2 20 c0 00 st %g1, [ %g3 ]
<== NOT EXECUTED
fs->buffers_count++;
4005146c: c4 07 60 50 ld [ %i5 + 0x50 ], %g2
<== NOT EXECUTED
the_node->previous = old_last;
40051470: c6 20 60 04 st %g3, [ %g1 + 4 ]
<== NOT EXECUTED
40051474: 84 00 a0 01 inc %g2
<== NOT EXECUTED
40051478: c4 27 60 50 st %g2, [ %i5 + 0x50 ]
<== NOT EXECUTED
handle->buffer->user = (void*) ((intptr_t) block);
4005147c: f4 20 60 34 st %i2, [ %g1 + 0x34 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))
40051480: 40 00 1a c8 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051484: f4 26 60 04 st %i2, [ %i1 + 4 ]
<== NOT EXECUTED
40051488: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005148c: 02 80 00 43 be 40051598 <rtems_rfs_buffer_handle_request+0x210>
<== NOT EXECUTED
40051490: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: block=%" PRIu32 " bdbuf-%s=%" PRIu32 " refs=%d\n",
40051494: 12 80 00 43 bne 400515a0 <rtems_rfs_buffer_handle_request+0x218>
<== NOT EXECUTED
40051498: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
4005149c: d8 00 60 30 ld [ %g1 + 0x30 ], %o4
<== NOT EXECUTED
400514a0: d6 00 60 18 ld [ %g1 + 0x18 ], %o3
<== NOT EXECUTED
return 0;
400514a4: b0 10 20 00 clr %i0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: block=%" PRIu32 " bdbuf-%s=%" PRIu32 " refs=%d\n",
400514a8: 15 10 02 18 sethi %hi(0x40086000), %o2
<== NOT EXECUTED
400514ac: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
400514b0: 94 12 a3 48 or %o2, 0x348, %o2
<== NOT EXECUTED
400514b4: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
400514b8: 7f ff aa 24 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400514bc: 90 12 20 20 or %o0, 0x20, %o0 ! 40086420 <MSDOS_DOT_NAME+0x2f8>
<== NOT EXECUTED
400514c0: 81 c7 e0 08 ret
<== NOT EXECUTED
400514c4: 81 e8 00 00 restore
<== NOT EXECUTED
if (!rtems_rfs_buffer_handle_has_block (handle))
400514c8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400514cc: 32 bf ff df bne,a 40051448 <rtems_rfs_buffer_handle_request+0xc0>
<== NOT EXECUTED
400514d0: c4 00 60 30 ld [ %g1 + 0x30 ], %g2
<== NOT EXECUTED
rc = rtems_rfs_buffer_io_request (fs, block, read, &handle->buffer);
400514d4: 96 06 60 08 add %i1, 8, %o3
<== NOT EXECUTED
400514d8: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
400514dc: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
400514e0: 40 00 2a 94 call 4005bf30 <rtems_rfs_buffer_bdbuf_request>
<== NOT EXECUTED
400514e4: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
if (rc > 0)
400514e8: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400514ec: 14 80 00 4f bg 40051628 <rtems_rfs_buffer_handle_request+0x2a0>
<== NOT EXECUTED
400514f0: 90 10 20 00 clr %o0
<== NOT EXECUTED
rtems_chain_set_off_chain (rtems_rfs_buffer_link(handle));
400514f4: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
node->next = NULL;
400514f8: 10 bf ff d3 b 40051444 <rtems_rfs_buffer_handle_request+0xbc>
<== NOT EXECUTED
400514fc: c0 20 40 00 clr [ %g1 ]
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: handle has buffer: %" PRIu32 "\n",
40051500: 11 10 02 18 sethi %hi(0x40086000), %o0
<== NOT EXECUTED
40051504: 7f ff aa 11 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051508: 90 12 23 50 or %o0, 0x350, %o0 ! 40086350 <MSDOS_DOT_NAME+0x228>
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (handle))
4005150c: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
40051510: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40051514: 32 bf ff b3 bne,a 400513e0 <rtems_rfs_buffer_handle_request+0x58>
<== NOT EXECUTED
40051518: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
handle->dirty = false;
4005151c: 10 bf ff b8 b 400513fc <rtems_rfs_buffer_handle_request+0x74>
<== NOT EXECUTED
40051520: c0 2e 40 00 clrb [ %i1 ]
<== NOT EXECUTED
handle->buffer = rtems_rfs_scan_chain (&fs->buffers,
40051524: 92 07 60 50 add %i5, 0x50, %o1
<== NOT EXECUTED
40051528: 7f ff fe 9a call 40050f90 <rtems_rfs_scan_chain>
<== NOT EXECUTED
4005152c: 90 07 60 44 add %i5, 0x44, %o0
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (handle) &&
40051530: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051534: 02 80 00 26 be 400515cc <rtems_rfs_buffer_handle_request+0x244>
<== NOT EXECUTED
40051538: d0 26 60 08 st %o0, [ %i1 + 8 ]
<== NOT EXECUTED
rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))
4005153c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051540: 40 00 1a 98 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051544: 92 10 21 00 mov 0x100, %o1
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (handle) &&
40051548: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005154c: 22 bf ff b8 be,a 4005142c <rtems_rfs_buffer_handle_request+0xa4>
<== NOT EXECUTED
40051550: c4 07 40 00 ld [ %i5 ], %g2
<== NOT EXECUTED
rtems_rfs_buffer_refs (handle) + 1);
40051554: c2 06 60 08 ld [ %i1 + 8 ], %g1
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: buffer shared: refs: %d\n",
40051558: d2 00 60 30 ld [ %g1 + 0x30 ], %o1
<== NOT EXECUTED
4005155c: 92 02 60 01 inc %o1
<== NOT EXECUTED
40051560: 11 10 02 18 sethi %hi(0x40086000), %o0
<== NOT EXECUTED
40051564: 7f ff a9 f9 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051568: 90 12 23 b0 or %o0, 0x3b0, %o0 ! 400863b0 <MSDOS_DOT_NAME+0x288>
<== NOT EXECUTED
if (!rtems_rfs_fs_no_local_cache (fs) &&
4005156c: 10 bf ff b0 b 4005142c <rtems_rfs_buffer_handle_request+0xa4>
<== NOT EXECUTED
40051570: c4 07 40 00 ld [ %i5 ], %g2
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: block=%" PRIu32 "\n", block);
40051574: 11 10 02 18 sethi %hi(0x40086000), %o0
<== NOT EXECUTED
40051578: 7f ff a9 f4 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005157c: 90 12 23 88 or %o0, 0x388, %o0 ! 40086388 <MSDOS_DOT_NAME+0x260>
<== NOT EXECUTED
if (fs->buffers_count)
40051580: c2 07 60 50 ld [ %i5 + 0x50 ], %g1
<== NOT EXECUTED
40051584: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40051588: 22 bf ff a9 be,a 4005142c <rtems_rfs_buffer_handle_request+0xa4>
<== NOT EXECUTED
4005158c: c4 07 40 00 ld [ %i5 ], %g2
<== NOT EXECUTED
handle->buffer = rtems_rfs_scan_chain (&fs->buffers,
40051590: 10 bf ff e5 b 40051524 <rtems_rfs_buffer_handle_request+0x19c>
<== NOT EXECUTED
40051594: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
return 0;
40051598: 81 c7 e0 08 ret
<== NOT EXECUTED
4005159c: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: block=%" PRIu32 " bdbuf-%s=%" PRIu32 " refs=%d\n",
400515a0: d8 00 60 30 ld [ %g1 + 0x30 ], %o4
<== NOT EXECUTED
400515a4: d6 00 60 18 ld [ %g1 + 0x18 ], %o3
<== NOT EXECUTED
return 0;
400515a8: b0 10 20 00 clr %i0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: block=%" PRIu32 " bdbuf-%s=%" PRIu32 " refs=%d\n",
400515ac: 15 10 02 18 sethi %hi(0x40086000), %o2
<== NOT EXECUTED
400515b0: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
400515b4: 94 12 a3 40 or %o2, 0x340, %o2
<== NOT EXECUTED
400515b8: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
400515bc: 7f ff a9 e3 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400515c0: 90 12 20 20 or %o0, 0x20, %o0 ! 40086420 <MSDOS_DOT_NAME+0x2f8>
<== NOT EXECUTED
400515c4: 81 c7 e0 08 ret
<== NOT EXECUTED
400515c8: 81 e8 00 00 restore
<== NOT EXECUTED
if (!rtems_rfs_fs_no_local_cache (fs) &&
400515cc: c2 07 40 00 ld [ %i5 ], %g1
<== NOT EXECUTED
400515d0: 80 88 60 02 btst 2, %g1
<== NOT EXECUTED
400515d4: 12 bf ff c1 bne 400514d8 <rtems_rfs_buffer_handle_request+0x150>
<== NOT EXECUTED
400515d8: 96 06 60 08 add %i1, 8, %o3
<== NOT EXECUTED
if (fs->release_count)
400515dc: c2 07 60 60 ld [ %i5 + 0x60 ], %g1
<== NOT EXECUTED
400515e0: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400515e4: 12 80 00 25 bne 40051678 <rtems_rfs_buffer_handle_request+0x2f0>
<== NOT EXECUTED
400515e8: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
if (!rtems_rfs_buffer_handle_has_block (handle) &&
400515ec: c2 07 60 70 ld [ %i5 + 0x70 ], %g1
<== NOT EXECUTED
400515f0: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400515f4: 02 bf ff b9 be 400514d8 <rtems_rfs_buffer_handle_request+0x150>
<== NOT EXECUTED
400515f8: 96 06 60 08 add %i1, 8, %o3
<== NOT EXECUTED
handle->buffer = rtems_rfs_scan_chain (&fs->release_modified,
400515fc: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40051600: 92 07 60 70 add %i5, 0x70, %o1
<== NOT EXECUTED
40051604: 7f ff fe 63 call 40050f90 <rtems_rfs_scan_chain>
<== NOT EXECUTED
40051608: 90 07 60 64 add %i5, 0x64, %o0
<== NOT EXECUTED
4005160c: d0 26 60 08 st %o0, [ %i1 + 8 ]
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (handle))
40051610: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051614: 02 bf ff b0 be 400514d4 <rtems_rfs_buffer_handle_request+0x14c>
<== NOT EXECUTED
40051618: 82 10 00 08 mov %o0, %g1
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (handle);
4005161c: 84 10 20 01 mov 1, %g2
<== NOT EXECUTED
40051620: 10 bf ff 89 b 40051444 <rtems_rfs_buffer_handle_request+0xbc>
<== NOT EXECUTED
40051624: c4 2e 40 00 stb %g2, [ %i1 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST))
40051628: 40 00 1a 5e call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005162c: 92 10 21 00 mov 0x100, %o1
<== NOT EXECUTED
40051630: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051634: 02 bf ff 70 be 400513f4 <rtems_rfs_buffer_handle_request+0x6c>
<== NOT EXECUTED
40051638: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: block=%" PRIu32 ": bdbuf-%s: %d: %s\n",
4005163c: 12 80 00 18 bne 4005169c <rtems_rfs_buffer_handle_request+0x314>
<== NOT EXECUTED
40051640: 3b 10 02 18 sethi %hi(0x40086000), %i5
<== NOT EXECUTED
40051644: 3b 10 02 18 sethi %hi(0x40086000), %i5
<== NOT EXECUTED
40051648: ba 17 63 48 or %i5, 0x348, %i5 ! 40086348 <MSDOS_DOT_NAME+0x220>
<== NOT EXECUTED
4005164c: 40 00 4b d5 call 400645a0 <strerror>
<== NOT EXECUTED
40051650: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40051654: 96 10 00 18 mov %i0, %o3
<== NOT EXECUTED
40051658: 98 10 00 08 mov %o0, %o4
<== NOT EXECUTED
4005165c: 94 10 00 1d mov %i5, %o2
<== NOT EXECUTED
40051660: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40051664: 11 10 02 18 sethi %hi(0x40086000), %o0
<== NOT EXECUTED
40051668: 7f ff a9 b8 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005166c: 90 12 23 e8 or %o0, 0x3e8, %o0 ! 400863e8 <MSDOS_DOT_NAME+0x2c0>
<== NOT EXECUTED
40051670: 81 c7 e0 08 ret
<== NOT EXECUTED
40051674: 81 e8 00 00 restore
<== NOT EXECUTED
handle->buffer = rtems_rfs_scan_chain (&fs->release,
40051678: 92 07 60 60 add %i5, 0x60, %o1
<== NOT EXECUTED
4005167c: 7f ff fe 45 call 40050f90 <rtems_rfs_scan_chain>
<== NOT EXECUTED
40051680: 90 07 60 54 add %i5, 0x54, %o0
<== NOT EXECUTED
40051684: d0 26 60 08 st %o0, [ %i1 + 8 ]
<== NOT EXECUTED
if (!rtems_rfs_buffer_handle_has_block (handle) &&
40051688: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005168c: 12 bf ff 6e bne 40051444 <rtems_rfs_buffer_handle_request+0xbc>
<== NOT EXECUTED
40051690: 82 10 00 08 mov %o0, %g1
<== NOT EXECUTED
40051694: 10 bf ff d7 b 400515f0 <rtems_rfs_buffer_handle_request+0x268>
<== NOT EXECUTED
40051698: c2 07 60 70 ld [ %i5 + 0x70 ], %g1
<== NOT EXECUTED
printf ("rtems-rfs: buffer-request: block=%" PRIu32 ": bdbuf-%s: %d: %s\n",
4005169c: 10 bf ff ec b 4005164c <rtems_rfs_buffer_handle_request+0x2c4>
<== NOT EXECUTED
400516a0: ba 17 63 40 or %i5, 0x340, %i5
<== NOT EXECUTED
400516c8 <rtems_rfs_buffer_open>:
{
400516c8: 9d e3 bf 40 save %sp, -192, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))
400516cc: 90 10 20 00 clr %o0
<== NOT EXECUTED
400516d0: 40 00 1a 34 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400516d4: 92 10 20 20 mov 0x20, %o1
<== NOT EXECUTED
400516d8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400516dc: 12 80 00 26 bne 40051774 <rtems_rfs_buffer_open+0xac>
<== NOT EXECUTED
400516e0: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
fs->device = open (name, O_RDWR);
400516e4: 92 10 20 02 mov 2, %o1
<== NOT EXECUTED
400516e8: 7f fe eb 0d call 4000c31c <open>
<== NOT EXECUTED
400516ec: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (fs->device < 0)
400516f0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400516f4: 06 80 00 15 bl 40051748 <rtems_rfs_buffer_open+0x80>
<== NOT EXECUTED
400516f8: d0 26 60 0c st %o0, [ %i1 + 0xc ]
<== NOT EXECUTED
if (fstat (fs->device, &st) < 0)
400516fc: 7f fe e7 f7 call 4000b6d8 <fstat>
<== NOT EXECUTED
40051700: 92 07 bf a0 add %fp, -96, %o1
<== NOT EXECUTED
40051704: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051708: 06 80 00 32 bl 400517d0 <rtems_rfs_buffer_open+0x108>
<== NOT EXECUTED
4005170c: 05 00 00 3c sethi %hi(0xf000), %g2
<== NOT EXECUTED
if (!S_ISBLK (st.st_mode))
40051710: c2 07 bf ac ld [ %fp + -84 ], %g1
<== NOT EXECUTED
40051714: 82 08 40 02 and %g1, %g2, %g1
<== NOT EXECUTED
40051718: 05 00 00 18 sethi %hi(0x6000), %g2
<== NOT EXECUTED
4005171c: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40051720: 22 80 00 1a be,a 40051788 <rtems_rfs_buffer_open+0xc0>
<== NOT EXECUTED
40051724: d0 06 60 0c ld [ %i1 + 0xc ], %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))
40051728: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005172c: 40 00 1a 1d call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051730: 92 10 20 08 mov 8, %o1
<== NOT EXECUTED
40051734: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051738: 12 80 00 38 bne 40051818 <rtems_rfs_buffer_open+0x150>
<== NOT EXECUTED
4005173c: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
return ENXIO;
40051740: 81 c7 e0 08 ret
<== NOT EXECUTED
40051744: 91 e8 20 06 restore %g0, 6, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))
40051748: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005174c: 40 00 1a 15 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051750: 92 10 20 08 mov 8, %o1
<== NOT EXECUTED
40051754: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051758: 02 bf ff fa be 40051740 <rtems_rfs_buffer_open+0x78>
<== NOT EXECUTED
4005175c: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
return ENXIO;
40051760: b0 10 20 06 mov 6, %i0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: cannot open file\n");
40051764: 7f ff a9 88 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
40051768: 90 12 20 88 or %o0, 0x88, %o0
<== NOT EXECUTED
4005176c: 81 c7 e0 08 ret
<== NOT EXECUTED
40051770: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: opening: %s\n", name);
40051774: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051778: 7f ff a9 74 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005177c: 90 12 20 60 or %o0, 0x60, %o0 ! 40086460 <MSDOS_DOT_NAME+0x338>
<== NOT EXECUTED
fs->device = open (name, O_RDWR);
40051780: 10 bf ff da b 400516e8 <rtems_rfs_buffer_open+0x20>
<== NOT EXECUTED
40051784: 92 10 20 02 mov 2, %o1
<== NOT EXECUTED
40051788: 94 06 60 10 add %i1, 0x10, %o2
<== NOT EXECUTED
4005178c: 13 10 01 10 sethi %hi(0x40044000), %o1
<== NOT EXECUTED
40051790: 7f fe e8 39 call 4000b874 <ioctl>
<== NOT EXECUTED
40051794: 92 12 62 09 or %o1, 0x209, %o1 ! 40044209 <rtems_rate_monotonic_report_statistics_with_plugin+0x125>
<== NOT EXECUTED
40051798: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
if (rv != 0)
4005179c: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
400517a0: 02 80 00 24 be 40051830 <rtems_rfs_buffer_open+0x168>
<== NOT EXECUTED
400517a4: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))
400517a8: 40 00 19 fe call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400517ac: 92 10 20 08 mov 8, %o1
<== NOT EXECUTED
400517b0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400517b4: 02 bf ff e3 be 40051740 <rtems_rfs_buffer_open+0x78>
<== NOT EXECUTED
400517b8: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
return ENXIO;
400517bc: b0 10 20 06 mov 6, %i0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: cannot obtain the disk\n");
400517c0: 7f ff a9 71 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
400517c4: 90 12 21 20 or %o0, 0x120, %o0
<== NOT EXECUTED
400517c8: 81 c7 e0 08 ret
<== NOT EXECUTED
400517cc: 81 e8 00 00 restore
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))
400517d0: 90 10 20 00 clr %o0
<== NOT EXECUTED
400517d4: 40 00 19 f3 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400517d8: 92 10 20 08 mov 8, %o1
<== NOT EXECUTED
400517dc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400517e0: 02 bf ff d8 be 40051740 <rtems_rfs_buffer_open+0x78>
<== NOT EXECUTED
400517e4: 01 00 00 00 nop
<== NOT EXECUTED
name, strerror (errno));
400517e8: 40 00 2c 4b call 4005c914 <__errno>
<== NOT EXECUTED
400517ec: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: stat '%s' failed: %s\n",
400517f0: 40 00 4b 6c call 400645a0 <strerror>
<== NOT EXECUTED
400517f4: d0 02 00 00 ld [ %o0 ], %o0
<== NOT EXECUTED
400517f8: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
400517fc: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
return ENXIO;
40051800: b0 10 20 06 mov 6, %i0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: stat '%s' failed: %s\n",
40051804: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051808: 7f ff a9 50 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005180c: 90 12 20 b8 or %o0, 0xb8, %o0 ! 400864b8 <MSDOS_DOT_NAME+0x390>
<== NOT EXECUTED
40051810: 81 c7 e0 08 ret
<== NOT EXECUTED
40051814: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: '%s' is not a block device\n", name);
40051818: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
return ENXIO;
4005181c: b0 10 20 06 mov 6, %i0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: '%s' is not a block device\n", name);
40051820: 7f ff a9 4a call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051824: 90 12 20 e8 or %o0, 0xe8, %o0
<== NOT EXECUTED
40051828: 81 c7 e0 08 ret
<== NOT EXECUTED
4005182c: 81 e8 00 00 restore
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))
40051830: 40 00 19 dc call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051834: 92 10 20 20 mov 0x20, %o1
<== NOT EXECUTED
40051838: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005183c: 32 80 00 04 bne,a 4005184c <rtems_rfs_buffer_open+0x184>
<== NOT EXECUTED
40051840: c2 06 60 10 ld [ %i1 + 0x10 ], %g1
<== NOT EXECUTED
}
40051844: 81 c7 e0 08 ret
<== NOT EXECUTED
40051848: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: buffer-open: blks=%" PRId32 ", blk-size=%" PRId32 "\n",
4005184c: d4 00 60 20 ld [ %g1 + 0x20 ], %o2
<== NOT EXECUTED
40051850: d2 00 60 1c ld [ %g1 + 0x1c ], %o1
<== NOT EXECUTED
40051854: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051858: 7f ff a9 3c call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005185c: 90 12 21 50 or %o0, 0x150, %o0 ! 40086550 <MSDOS_DOT_NAME+0x428>
<== NOT EXECUTED
}
40051860: 81 c7 e0 08 ret
<== NOT EXECUTED
40051864: 81 e8 00 00 restore
<== NOT EXECUTED
40051990 <rtems_rfs_buffer_setblksize>:
{
40051990: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))
40051994: 90 10 20 00 clr %o0
<== NOT EXECUTED
{
40051998: f2 27 a0 48 st %i1, [ %fp + 0x48 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))
4005199c: 40 00 19 81 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400519a0: 92 10 24 00 mov 0x400, %o1
<== NOT EXECUTED
400519a4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400519a8: 12 80 00 37 bne 40051a84 <rtems_rfs_buffer_setblksize+0xf4>
<== NOT EXECUTED
400519ac: d2 07 a0 48 ld [ %fp + 0x48 ], %o1
<== NOT EXECUTED
rc = rtems_rfs_buffers_release (fs);
400519b0: 7f ff ff d4 call 40051900 <rtems_rfs_buffers_release>
<== NOT EXECUTED
400519b4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))
400519b8: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400519bc: 14 80 00 25 bg 40051a50 <rtems_rfs_buffer_setblksize+0xc0>
<== NOT EXECUTED
400519c0: 90 10 20 00 clr %o0
<== NOT EXECUTED
rc = rtems_rfs_buffer_sync (fs);
400519c4: 7f ff ff a9 call 40051868 <rtems_rfs_buffer_sync>
<== NOT EXECUTED
400519c8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))
400519cc: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400519d0: 14 80 00 12 bg 40051a18 <rtems_rfs_buffer_setblksize+0x88>
<== NOT EXECUTED
400519d4: 90 10 20 00 clr %o0
<== NOT EXECUTED
rc = fs->disk->ioctl (fs->disk, RTEMS_BLKIO_SETBLKSIZE, &size);
400519d8: d0 06 20 10 ld [ %i0 + 0x10 ], %o0
<== NOT EXECUTED
400519dc: c2 02 20 38 ld [ %o0 + 0x38 ], %g1
<== NOT EXECUTED
400519e0: 94 07 a0 48 add %fp, 0x48, %o2
<== NOT EXECUTED
400519e4: 13 20 01 10 sethi %hi(0x80044000), %o1
<== NOT EXECUTED
400519e8: 9f c0 40 00 call %g1
<== NOT EXECUTED
400519ec: 92 12 62 04 or %o1, 0x204, %o1 ! 80044204 <RAM_END+0x3fc44204>
<== NOT EXECUTED
if (rc < 0)
400519f0: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400519f4: 06 80 00 04 bl 40051a04 <rtems_rfs_buffer_setblksize+0x74>
<== NOT EXECUTED
400519f8: 01 00 00 00 nop
<== NOT EXECUTED
}
400519fc: 81 c7 e0 08 ret
<== NOT EXECUTED
40051a00: 81 e8 00 00 restore
<== NOT EXECUTED
rc = errno;
40051a04: 40 00 2b c4 call 4005c914 <__errno>
<== NOT EXECUTED
40051a08: 01 00 00 00 nop
<== NOT EXECUTED
40051a0c: f0 02 00 00 ld [ %o0 ], %i0
<== NOT EXECUTED
}
40051a10: 81 c7 e0 08 ret
<== NOT EXECUTED
40051a14: 81 e8 00 00 restore
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))
40051a18: 40 00 19 62 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051a1c: 92 10 24 00 mov 0x400, %o1
<== NOT EXECUTED
40051a20: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051a24: 22 bf ff ee be,a 400519dc <rtems_rfs_buffer_setblksize+0x4c>
<== NOT EXECUTED
40051a28: d0 06 20 10 ld [ %i0 + 0x10 ], %o0
<== NOT EXECUTED
printf ("rtems-rfs: buffer-setblksize: device sync failed: %d: %s\n",
40051a2c: 40 00 4a dd call 400645a0 <strerror>
<== NOT EXECUTED
40051a30: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40051a34: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40051a38: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40051a3c: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051a40: 7f ff a8 c2 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051a44: 90 12 22 90 or %o0, 0x290, %o0 ! 40086690 <MSDOS_DOT_NAME+0x568>
<== NOT EXECUTED
rc = fs->disk->ioctl (fs->disk, RTEMS_BLKIO_SETBLKSIZE, &size);
40051a48: 10 bf ff e5 b 400519dc <rtems_rfs_buffer_setblksize+0x4c>
<== NOT EXECUTED
40051a4c: d0 06 20 10 ld [ %i0 + 0x10 ], %o0
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE))
40051a50: 40 00 19 54 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051a54: 92 10 24 00 mov 0x400, %o1
<== NOT EXECUTED
40051a58: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051a5c: 02 bf ff da be 400519c4 <rtems_rfs_buffer_setblksize+0x34>
<== NOT EXECUTED
40051a60: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: buffer-setblksize: buffer release failed: %d: %s\n",
40051a64: 40 00 4a cf call 400645a0 <strerror>
<== NOT EXECUTED
40051a68: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40051a6c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40051a70: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40051a74: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051a78: 7f ff a8 b4 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051a7c: 90 12 22 50 or %o0, 0x250, %o0 ! 40086650 <MSDOS_DOT_NAME+0x528>
<== NOT EXECUTED
40051a80: 30 bf ff d1 b,a 400519c4 <rtems_rfs_buffer_setblksize+0x34>
<== NOT EXECUTED
printf ("rtems-rfs: buffer-setblksize: block size: %" PRIu32 "\n", size);
40051a84: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051a88: 7f ff a8 b0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051a8c: 90 12 22 20 or %o0, 0x220, %o0 ! 40086620 <MSDOS_DOT_NAME+0x4f8>
<== NOT EXECUTED
40051a90: 30 bf ff c8 b,a 400519b0 <rtems_rfs_buffer_setblksize+0x20>
<== NOT EXECUTED
40051868 <rtems_rfs_buffer_sync>:
{
40051868: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))
4005186c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051870: 92 10 20 20 mov 0x20, %o1
<== NOT EXECUTED
40051874: 40 00 19 cb call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051878: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
4005187c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051880: 12 80 00 1d bne 400518f4 <rtems_rfs_buffer_sync+0x8c>
<== NOT EXECUTED
40051884: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
sc = rtems_bdbuf_syncdev (rtems_rfs_fs_device (fs));
40051888: 7f fe d5 79 call 40006e6c <rtems_bdbuf_syncdev>
<== NOT EXECUTED
4005188c: d0 07 60 10 ld [ %i5 + 0x10 ], %o0
<== NOT EXECUTED
int result = 0;
40051890: b0 10 20 00 clr %i0
<== NOT EXECUTED
if (sc != RTEMS_SUCCESSFUL)
40051894: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051898: 12 80 00 06 bne 400518b0 <rtems_rfs_buffer_sync+0x48>
<== NOT EXECUTED
4005189c: b8 10 00 08 mov %o0, %i4
<== NOT EXECUTED
rtems_disk_release (fs->disk);
400518a0: 7f fe db fb call 4000888c <rtems_disk_release>
<== NOT EXECUTED
400518a4: d0 07 60 10 ld [ %i5 + 0x10 ], %o0
<== NOT EXECUTED
}
400518a8: 81 c7 e0 08 ret
<== NOT EXECUTED
400518ac: 81 e8 00 00 restore
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_SYNC))
400518b0: 90 10 20 00 clr %o0
<== NOT EXECUTED
400518b4: 92 10 20 20 mov 0x20, %o1
<== NOT EXECUTED
400518b8: 40 00 19 ba call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400518bc: b0 10 20 05 mov 5, %i0
<== NOT EXECUTED
400518c0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400518c4: 02 bf ff f7 be 400518a0 <rtems_rfs_buffer_sync+0x38>
<== NOT EXECUTED
400518c8: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: buffer-sync: device sync failed: %s\n",
400518cc: 7f ff 1f 36 call 400195a4 <rtems_status_text>
<== NOT EXECUTED
400518d0: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
400518d4: 92 10 00 08 mov %o0, %o1
<== NOT EXECUTED
400518d8: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
400518dc: 7f ff a9 1b call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400518e0: 90 12 21 a0 or %o0, 0x1a0, %o0 ! 400865a0 <MSDOS_DOT_NAME+0x478>
<== NOT EXECUTED
rtems_disk_release (fs->disk);
400518e4: 7f fe db ea call 4000888c <rtems_disk_release>
<== NOT EXECUTED
400518e8: d0 07 60 10 ld [ %i5 + 0x10 ], %o0
<== NOT EXECUTED
}
400518ec: 81 c7 e0 08 ret
<== NOT EXECUTED
400518f0: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: buffer-sync: syncing\n");
400518f4: 7f ff a9 24 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
400518f8: 90 12 21 80 or %o0, 0x180, %o0
<== NOT EXECUTED
400518fc: 30 bf ff e3 b,a 40051888 <rtems_rfs_buffer_sync+0x20>
<== NOT EXECUTED
40051900 <rtems_rfs_buffers_release>:
int
rtems_rfs_buffers_release (rtems_rfs_file_system* fs)
{
40051900: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
int rrc = 0;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_RELEASE))
40051904: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051908: 92 10 20 40 mov 0x40, %o1
<== NOT EXECUTED
4005190c: 40 00 19 a5 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051910: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
40051914: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051918: 32 80 00 17 bne,a 40051974 <rtems_rfs_buffers_release+0x74>
<== NOT EXECUTED
4005191c: d6 06 20 70 ld [ %i0 + 0x70 ], %o3
<== NOT EXECUTED
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,
40051920: 94 10 20 00 clr %o2
<== NOT EXECUTED
40051924: 92 07 60 60 add %i5, 0x60, %o1
<== NOT EXECUTED
40051928: 7f ff fd e1 call 400510ac <rtems_rfs_release_chain>
<== NOT EXECUTED
4005192c: 90 07 60 54 add %i5, 0x54, %o0
<== NOT EXECUTED
40051930: 92 07 60 70 add %i5, 0x70, %o1
<== NOT EXECUTED
40051934: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
&fs->release_count,
false);
if ((rc > 0) && (rrc == 0))
rrc = rc;
rc = rtems_rfs_release_chain (&fs->release_modified,
40051938: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
if ((rc > 0) && (rrc == 0))
4005193c: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
40051940: 04 80 00 06 ble 40051958 <rtems_rfs_buffers_release+0x58>
<== NOT EXECUTED
40051944: 90 07 60 64 add %i5, 0x64, %o0
<== NOT EXECUTED
rc = rtems_rfs_release_chain (&fs->release_modified,
40051948: 7f ff fd d9 call 400510ac <rtems_rfs_release_chain>
<== NOT EXECUTED
4005194c: 01 00 00 00 nop
<== NOT EXECUTED
true);
if ((rc > 0) && (rrc == 0))
rrc = rc;
return rrc;
}
40051950: 81 c7 e0 08 ret
<== NOT EXECUTED
40051954: 81 e8 00 00 restore
<== NOT EXECUTED
rc = rtems_rfs_release_chain (&fs->release_modified,
40051958: 7f ff fd d5 call 400510ac <rtems_rfs_release_chain>
<== NOT EXECUTED
4005195c: 01 00 00 00 nop
<== NOT EXECUTED
40051960: 82 38 00 08 xnor %g0, %o0, %g1
<== NOT EXECUTED
40051964: 83 38 60 1f sra %g1, 0x1f, %g1
<== NOT EXECUTED
40051968: b0 0a 00 01 and %o0, %g1, %i0
<== NOT EXECUTED
4005196c: 81 c7 e0 08 ret
<== NOT EXECUTED
40051970: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: buffers-release: active:%" PRIu32 " "
40051974: d4 06 20 60 ld [ %i0 + 0x60 ], %o2
<== NOT EXECUTED
40051978: d2 06 20 50 ld [ %i0 + 0x50 ], %o1
<== NOT EXECUTED
4005197c: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051980: 7f ff a8 f2 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051984: 90 12 21 d0 or %o0, 0x1d0, %o0 ! 400865d0 <MSDOS_DOT_NAME+0x4a8>
<== NOT EXECUTED
rc = rtems_rfs_release_chain (&fs->release,
40051988: 10 bf ff e7 b 40051924 <rtems_rfs_buffers_release+0x24>
<== NOT EXECUTED
4005198c: 94 10 20 00 clr %o2
<== NOT EXECUTED
400520b8 <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)
{
400520b8: 9d e3 bf 30 save %sp, -208, %sp
<== NOT EXECUTED
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))
400520bc: 90 10 20 00 clr %o0
<== NOT EXECUTED
400520c0: 40 00 17 b8 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400520c4: 13 08 00 00 sethi %hi(0x20000000), %o1
<== NOT EXECUTED
400520c8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400520cc: 12 80 00 3e bne 400521c4 <rtems_rfs_dir_add_entry+0x10c>
<== NOT EXECUTED
400520d0: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
for (c = 0; c < length; c++)
printf ("%c", name[c]);
printf (", len=%zd\n", length);
}
rc = rtems_rfs_block_map_open (fs, dir, &map);
400520d4: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
400520d8: 7f ff f8 92 call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
400520dc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
400520e0: a0 92 20 00 orcc %o0, 0, %l0
<== NOT EXECUTED
400520e4: 24 80 00 04 ble,a 400520f4 <rtems_rfs_dir_add_entry+0x3c>
<== NOT EXECUTED
400520e8: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
}
rtems_rfs_buffer_handle_close (fs, &buffer);
rtems_rfs_block_map_close (fs, &map);
return rc;
}
400520ec: 81 c7 e0 08 ret
<== NOT EXECUTED
400520f0: 91 e8 00 10 restore %g0, %l0, %o0
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
400520f4: 27 00 00 3f sethi %hi(0xfc00), %l3
<== NOT EXECUTED
handle->bnum = 0;
400520f8: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
400520fc: a6 14 e3 ff or %l3, 0x3ff, %l3
<== NOT EXECUTED
handle->buffer = NULL;
40052100: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
if ((length + RTEMS_RFS_DIR_ENTRY_SIZE) <
40052104: a4 06 e0 0a add %i3, 0xa, %l2
<== NOT EXECUTED
bpos->bno = 0;
40052108: c0 27 bf 98 clr [ %fp + -104 ]
<== NOT EXECUTED
bpos->boff = 0;
4005210c: c0 27 bf 9c clr [ %fp + -100 ]
<== NOT EXECUTED
bpos->block = 0;
40052110: c0 27 bf a0 clr [ %fp + -96 ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_find (fs, &map, &bpos, &block);
40052114: 96 07 bf 94 add %fp, -108, %o3
<== NOT EXECUTED
40052118: 94 07 bf 98 add %fp, -104, %o2
<== NOT EXECUTED
4005211c: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052120: 7f ff f9 52 call 40050668 <rtems_rfs_block_map_find>
<== NOT EXECUTED
40052124: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052128: a0 92 20 00 orcc %o0, 0, %l0
<== NOT EXECUTED
4005212c: 04 80 00 88 ble 4005234c <rtems_rfs_dir_add_entry+0x294>
<== NOT EXECUTED
40052130: 80 a4 20 06 cmp %l0, 6
<== NOT EXECUTED
if (rc != ENXIO)
40052134: 12 80 00 d9 bne 40052498 <rtems_rfs_dir_add_entry+0x3e0>
<== NOT EXECUTED
40052138: 96 07 bf 94 add %fp, -108, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_grow (fs, &map, 1, &block);
4005213c: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40052140: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052144: 7f ff f9 cd call 40050878 <rtems_rfs_block_map_grow>
<== NOT EXECUTED
40052148: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005214c: a0 92 20 00 orcc %o0, 0, %l0
<== NOT EXECUTED
40052150: 14 80 00 c1 bg 40052454 <rtems_rfs_dir_add_entry+0x39c>
<== NOT EXECUTED
40052154: c2 07 bf 98 ld [ %fp + -104 ], %g1
<== NOT EXECUTED
bpos.bno++;
40052158: 82 00 60 01 inc %g1
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);
4005215c: d4 07 bf 94 ld [ %fp + -108 ], %o2
<== NOT EXECUTED
40052160: 96 10 20 00 clr %o3
<== NOT EXECUTED
bpos.bno++;
40052164: c2 27 bf 98 st %g1, [ %fp + -104 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);
40052168: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
4005216c: 7f ff fc 87 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40052170: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052174: a0 92 20 00 orcc %o0, 0, %l0
<== NOT EXECUTED
40052178: 04 80 00 27 ble 40052214 <rtems_rfs_dir_add_entry+0x15c>
<== NOT EXECUTED
4005217c: c2 07 bf ac ld [ %fp + -84 ], %g1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))
40052180: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052184: 40 00 17 87 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052188: 13 08 00 00 sethi %hi(0x20000000), %o1
<== NOT EXECUTED
4005218c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052190: 32 80 00 a7 bne,a 4005242c <rtems_rfs_dir_add_entry+0x374>
<== NOT EXECUTED
40052194: fa 06 60 08 ld [ %i1 + 8 ], %i5
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40052198: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
4005219c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400521a0: 7f ff fd 41 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400521a4: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
400521a8: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
400521ac: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
400521b0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
400521b4: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
400521b8: 7f ff f8 b9 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400521bc: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
return rc;
400521c0: 30 bf ff cb b,a 400520ec <rtems_rfs_dir_add_entry+0x34>
<== NOT EXECUTED
printf ("rtems-rfs: dir-add-entry: dir=%" PRId32 ", name=",
400521c4: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
400521c8: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
400521cc: 7f ff a6 df call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400521d0: 90 12 22 40 or %o0, 0x240, %o0 ! 40086a40 <MSDOS_DOT_NAME+0x918>
<== NOT EXECUTED
for (c = 0; c < length; c++)
400521d4: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
400521d8: 02 80 00 09 be 400521fc <rtems_rfs_dir_add_entry+0x144>
<== NOT EXECUTED
400521dc: a0 06 c0 1a add %i3, %i2, %l0
<== NOT EXECUTED
400521e0: ba 10 00 1a mov %i2, %i5
<== NOT EXECUTED
printf ("%c", name[c]);
400521e4: 7f ff a6 ee call 4003bd9c <__wrap_putchar>
<== NOT EXECUTED
400521e8: d0 4f 40 00 ldsb [ %i5 ], %o0
<== NOT EXECUTED
400521ec: ba 07 60 01 inc %i5
<== NOT EXECUTED
for (c = 0; c < length; c++)
400521f0: 80 a4 00 1d cmp %l0, %i5
<== NOT EXECUTED
400521f4: 12 bf ff fc bne 400521e4 <rtems_rfs_dir_add_entry+0x12c>
<== NOT EXECUTED
400521f8: 01 00 00 00 nop
<== NOT EXECUTED
printf (", len=%zd\n", length);
400521fc: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
40052200: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40052204: 7f ff a6 d1 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052208: 90 12 22 70 or %o0, 0x270, %o0 ! 40086a70 <MSDOS_DOT_NAME+0x948>
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, dir, &map);
4005220c: 10 bf ff b2 b 400520d4 <rtems_rfs_dir_add_entry+0x1c>
<== NOT EXECUTED
40052210: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
entry = rtems_rfs_buffer_data (&buffer);
40052214: fa 00 60 1c ld [ %g1 + 0x1c ], %i5
<== NOT EXECUTED
memset (entry, 0xff, rtems_rfs_fs_block_size (fs));
40052218: d4 06 20 08 ld [ %i0 + 8 ], %o2
<== NOT EXECUTED
4005221c: 92 10 20 ff mov 0xff, %o1
<== NOT EXECUTED
40052220: 40 00 3b f6 call 400611f8 <memset>
<== NOT EXECUTED
40052224: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40052228: c8 06 20 08 ld [ %i0 + 8 ], %g4
<== NOT EXECUTED
4005222c: 86 81 3f f6 addcc %g4, -10, %g3
<== NOT EXECUTED
40052230: 02 bf ff ba be 40052118 <rtems_rfs_dir_add_entry+0x60>
<== NOT EXECUTED
40052234: 96 07 bf 94 add %fp, -108, %o3
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052238: d4 0f 60 08 ldub [ %i5 + 8 ], %o2
<== NOT EXECUTED
4005223c: e0 0f 60 09 ldub [ %i5 + 9 ], %l0
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052240: c4 0f 40 00 ldub [ %i5 ], %g2
<== NOT EXECUTED
40052244: c2 0f 60 01 ldub [ %i5 + 1 ], %g1
<== NOT EXECUTED
40052248: e2 0f 60 02 ldub [ %i5 + 2 ], %l1
<== NOT EXECUTED
4005224c: d6 0f 60 03 ldub [ %i5 + 3 ], %o3
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052250: 95 2a a0 08 sll %o2, 8, %o2
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052254: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052258: a0 14 00 0a or %l0, %o2, %l0
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
4005225c: 83 28 60 10 sll %g1, 0x10, %g1
<== NOT EXECUTED
40052260: a3 2c 60 08 sll %l1, 8, %l1
<== NOT EXECUTED
40052264: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052268: 80 a4 00 13 cmp %l0, %l3
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
4005226c: a2 14 40 01 or %l1, %g1, %l1
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052270: 02 80 00 4d be 400523a4 <rtems_rfs_dir_add_entry+0x2ec>
<== NOT EXECUTED
40052274: a2 12 c0 11 or %o3, %l1, %l1
<== NOT EXECUTED
offset = 0;
40052278: 10 80 00 1f b 400522f4 <rtems_rfs_dir_add_entry+0x23c>
<== NOT EXECUTED
4005227c: a8 10 20 00 clr %l4
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, eino))
40052280: 80 a0 40 10 cmp %g1, %l0
<== NOT EXECUTED
40052284: 08 80 00 1f bleu 40052300 <rtems_rfs_dir_add_entry+0x248>
<== NOT EXECUTED
40052288: 80 a4 60 00 cmp %l1, 0
<== NOT EXECUTED
4005228c: 02 80 00 1e be 40052304 <rtems_rfs_dir_add_entry+0x24c>
<== NOT EXECUTED
40052290: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052294: c2 06 20 14 ld [ %i0 + 0x14 ], %g1
<== NOT EXECUTED
40052298: 80 a0 40 11 cmp %g1, %l1
<== NOT EXECUTED
4005229c: 0a 80 00 1a bcs 40052304 <rtems_rfs_dir_add_entry+0x24c>
<== NOT EXECUTED
400522a0: 01 00 00 00 nop
<== NOT EXECUTED
offset += elength;
400522a4: a8 05 00 10 add %l4, %l0, %l4
<== NOT EXECUTED
while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
400522a8: 80 a0 c0 14 cmp %g3, %l4
<== NOT EXECUTED
400522ac: 08 bf ff 9a bleu 40052114 <rtems_rfs_dir_add_entry+0x5c>
<== NOT EXECUTED
400522b0: ba 07 40 10 add %i5, %l0, %i5
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
400522b4: d4 0f 60 08 ldub [ %i5 + 8 ], %o2
<== NOT EXECUTED
400522b8: e0 0f 60 09 ldub [ %i5 + 9 ], %l0
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
400522bc: c4 0f 40 00 ldub [ %i5 ], %g2
<== NOT EXECUTED
400522c0: c2 0f 60 01 ldub [ %i5 + 1 ], %g1
<== NOT EXECUTED
400522c4: d6 0f 60 02 ldub [ %i5 + 2 ], %o3
<== NOT EXECUTED
400522c8: e2 0f 60 03 ldub [ %i5 + 3 ], %l1
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
400522cc: 95 2a a0 08 sll %o2, 8, %o2
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
400522d0: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
400522d4: a0 14 00 0a or %l0, %o2, %l0
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
400522d8: 83 28 60 10 sll %g1, 0x10, %g1
<== NOT EXECUTED
400522dc: 97 2a e0 08 sll %o3, 8, %o3
<== NOT EXECUTED
400522e0: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
400522e4: 80 a4 00 13 cmp %l0, %l3
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
400522e8: 96 12 c0 01 or %o3, %g1, %o3
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
400522ec: 02 80 00 2d be 400523a0 <rtems_rfs_dir_add_entry+0x2e8>
<== NOT EXECUTED
400522f0: a2 14 40 0b or %l1, %o3, %l1
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, eino))
400522f4: 80 a4 20 0a cmp %l0, 0xa
<== NOT EXECUTED
400522f8: 34 bf ff e2 bg,a 40052280 <rtems_rfs_dir_add_entry+0x1c8>
<== NOT EXECUTED
400522fc: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))
40052300: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052304: 40 00 17 27 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052308: 13 08 00 00 sethi %hi(0x20000000), %o1
<== NOT EXECUTED
4005230c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052310: 32 80 00 1c bne,a 40052380 <rtems_rfs_dir_add_entry+0x2c8>
<== NOT EXECUTED
40052314: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40052318: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
4005231c: 7f ff fc e2 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40052320: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052324: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
40052328: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
4005232c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
40052330: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
return EIO;
40052334: a0 10 20 05 mov 5, %l0
<== NOT EXECUTED
handle->buffer = NULL;
40052338: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
4005233c: 7f ff f8 58 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40052340: b0 10 00 10 mov %l0, %i0
<== NOT EXECUTED
}
40052344: 81 c7 e0 08 ret
<== NOT EXECUTED
40052348: 81 e8 00 00 restore
<== NOT EXECUTED
bpos.bno++;
4005234c: c2 07 bf 98 ld [ %fp + -104 ], %g1
<== NOT EXECUTED
40052350: 82 00 60 01 inc %g1
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);
40052354: d4 07 bf 94 ld [ %fp + -108 ], %o2
<== NOT EXECUTED
40052358: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
bpos.bno++;
4005235c: c2 27 bf 98 st %g1, [ %fp + -104 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, read);
40052360: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052364: 7f ff fc 09 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40052368: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005236c: a0 92 20 00 orcc %o0, 0, %l0
<== NOT EXECUTED
40052370: 14 bf ff 84 bg 40052180 <rtems_rfs_dir_add_entry+0xc8>
<== NOT EXECUTED
40052374: c2 07 bf ac ld [ %fp + -84 ], %g1
<== NOT EXECUTED
entry = rtems_rfs_buffer_data (&buffer);
40052378: 10 bf ff ac b 40052228 <rtems_rfs_dir_add_entry+0x170>
<== NOT EXECUTED
4005237c: fa 00 60 1c ld [ %g1 + 0x1c ], %i5
<== NOT EXECUTED
printf ("rtems-rfs: dir-add-entry: "
40052380: 98 10 00 14 mov %l4, %o4
<== NOT EXECUTED
40052384: 96 10 00 11 mov %l1, %o3
<== NOT EXECUTED
40052388: 94 10 00 10 mov %l0, %o2
<== NOT EXECUTED
4005238c: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40052390: 7f ff a6 6e call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052394: 90 12 23 58 or %o0, 0x358, %o0 ! 40086b58 <MSDOS_DOT_NAME+0xa30>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40052398: 10 bf ff e1 b 4005231c <rtems_rfs_dir_add_entry+0x264>
<== NOT EXECUTED
4005239c: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
400523a0: 88 21 00 14 sub %g4, %l4, %g4
<== NOT EXECUTED
if ((length + RTEMS_RFS_DIR_ENTRY_SIZE) <
400523a4: 80 a4 80 04 cmp %l2, %g4
<== NOT EXECUTED
400523a8: 1a bf ff 5c bcc 40052118 <rtems_rfs_dir_add_entry+0x60>
<== NOT EXECUTED
400523ac: 96 07 bf 94 add %fp, -108, %o3
<== NOT EXECUTED
hash = rtems_rfs_dir_hash (name, length);
400523b0: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
400523b4: 40 00 27 23 call 4005c040 <rtems_rfs_dir_hash>
<== NOT EXECUTED
400523b8: 90 10 00 1a mov %i2, %o0
<== NOT EXECUTED
rtems_rfs_dir_set_entry_hash (entry, hash);
400523bc: 87 32 20 18 srl %o0, 0x18, %g3
<== NOT EXECUTED
400523c0: 85 32 20 10 srl %o0, 0x10, %g2
<== NOT EXECUTED
400523c4: 83 32 20 08 srl %o0, 8, %g1
<== NOT EXECUTED
rtems_rfs_dir_set_entry_ino (entry, ino);
400523c8: 89 37 20 18 srl %i4, 0x18, %g4
<== NOT EXECUTED
rtems_rfs_dir_set_entry_hash (entry, hash);
400523cc: c6 2f 60 04 stb %g3, [ %i5 + 4 ]
<== NOT EXECUTED
rtems_rfs_dir_set_entry_ino (entry, ino);
400523d0: 87 37 20 10 srl %i4, 0x10, %g3
<== NOT EXECUTED
rtems_rfs_dir_set_entry_hash (entry, hash);
400523d4: c4 2f 60 05 stb %g2, [ %i5 + 5 ]
<== NOT EXECUTED
rtems_rfs_dir_set_entry_ino (entry, ino);
400523d8: 85 37 20 08 srl %i4, 8, %g2
<== NOT EXECUTED
rtems_rfs_dir_set_entry_hash (entry, hash);
400523dc: c2 2f 60 06 stb %g1, [ %i5 + 6 ]
<== NOT EXECUTED
rtems_rfs_dir_set_entry_length (entry,
400523e0: 83 2c a0 10 sll %l2, 0x10, %g1
<== NOT EXECUTED
rtems_rfs_dir_set_entry_hash (entry, hash);
400523e4: d0 2f 60 07 stb %o0, [ %i5 + 7 ]
<== NOT EXECUTED
rtems_rfs_dir_set_entry_length (entry,
400523e8: 83 30 60 18 srl %g1, 0x18, %g1
<== NOT EXECUTED
rtems_rfs_dir_set_entry_ino (entry, ino);
400523ec: c8 2f 40 00 stb %g4, [ %i5 ]
<== NOT EXECUTED
memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);
400523f0: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
rtems_rfs_dir_set_entry_length (entry,
400523f4: c2 2f 60 08 stb %g1, [ %i5 + 8 ]
<== NOT EXECUTED
memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);
400523f8: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
rtems_rfs_dir_set_entry_ino (entry, ino);
400523fc: c6 2f 60 01 stb %g3, [ %i5 + 1 ]
<== NOT EXECUTED
memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);
40052400: 90 07 60 0a add %i5, 0xa, %o0
<== NOT EXECUTED
rtems_rfs_dir_set_entry_ino (entry, ino);
40052404: c4 2f 60 02 stb %g2, [ %i5 + 2 ]
<== NOT EXECUTED
return 0;
40052408: a0 10 20 00 clr %l0
<== NOT EXECUTED
rtems_rfs_dir_set_entry_ino (entry, ino);
4005240c: f8 2f 60 03 stb %i4, [ %i5 + 3 ]
<== NOT EXECUTED
memcpy (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length);
40052410: 40 00 3a f0 call 40060fd0 <memcpy>
<== NOT EXECUTED
40052414: e4 2f 60 09 stb %l2, [ %i5 + 9 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&buffer);
40052418: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
4005241c: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052420: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40052424: 10 bf ff 5f b 400521a0 <rtems_rfs_dir_add_entry+0xe8>
<== NOT EXECUTED
40052428: c2 2f bf a4 stb %g1, [ %fp + -92 ]
<== NOT EXECUTED
printf ("rtems-rfs: dir-add-entry: "
4005242c: 40 00 48 5d call 400645a0 <strerror>
<== NOT EXECUTED
40052430: 90 10 00 10 mov %l0, %o0
<== NOT EXECUTED
40052434: 94 10 00 10 mov %l0, %o2
<== NOT EXECUTED
40052438: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
4005243c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40052440: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40052444: 7f ff a6 41 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052448: 90 12 23 10 or %o0, 0x310, %o0 ! 40086b10 <MSDOS_DOT_NAME+0x9e8>
<== NOT EXECUTED
4005244c: 10 bf ff 54 b 4005219c <rtems_rfs_dir_add_entry+0xe4>
<== NOT EXECUTED
40052450: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))
40052454: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052458: 40 00 16 d2 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005245c: 13 08 00 00 sethi %hi(0x20000000), %o1
<== NOT EXECUTED
40052460: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052464: 22 bf ff 4e be,a 4005219c <rtems_rfs_dir_add_entry+0xe4>
<== NOT EXECUTED
40052468: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-add-entry: "
4005246c: fa 06 60 08 ld [ %i1 + 8 ], %i5
<== NOT EXECUTED
40052470: 40 00 48 4c call 400645a0 <strerror>
<== NOT EXECUTED
40052474: 90 10 00 10 mov %l0, %o0
<== NOT EXECUTED
40052478: 94 10 00 10 mov %l0, %o2
<== NOT EXECUTED
4005247c: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40052480: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40052484: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40052488: 7f ff a6 30 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005248c: 90 12 22 c8 or %o0, 0x2c8, %o0 ! 40086ac8 <MSDOS_DOT_NAME+0x9a0>
<== NOT EXECUTED
40052490: 10 bf ff 43 b 4005219c <rtems_rfs_dir_add_entry+0xe4>
<== NOT EXECUTED
40052494: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_ADD_ENTRY))
40052498: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005249c: 40 00 16 c1 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400524a0: 13 08 00 00 sethi %hi(0x20000000), %o1
<== NOT EXECUTED
400524a4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400524a8: 22 bf ff 3d be,a 4005219c <rtems_rfs_dir_add_entry+0xe4>
<== NOT EXECUTED
400524ac: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-add-entry: "
400524b0: fa 06 60 08 ld [ %i1 + 8 ], %i5
<== NOT EXECUTED
400524b4: 40 00 48 3b call 400645a0 <strerror>
<== NOT EXECUTED
400524b8: 90 10 00 10 mov %l0, %o0
<== NOT EXECUTED
400524bc: 94 10 00 10 mov %l0, %o2
<== NOT EXECUTED
400524c0: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
400524c4: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400524c8: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
400524cc: 7f ff a6 1f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400524d0: 90 12 22 80 or %o0, 0x280, %o0 ! 40086a80 <MSDOS_DOT_NAME+0x958>
<== NOT EXECUTED
400524d4: 10 bf ff 32 b 4005219c <rtems_rfs_dir_add_entry+0xe4>
<== NOT EXECUTED
400524d8: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
400524dc <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)
{
400524dc: 9d e3 bf 40 save %sp, -192, %sp
<== NOT EXECUTED
rtems_rfs_block_no block;
rtems_rfs_buffer_handle buffer;
bool search;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))
400524e0: 90 10 20 00 clr %o0
<== NOT EXECUTED
400524e4: 40 00 16 af call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400524e8: 13 10 00 00 sethi %hi(0x40000000), %o1
<== NOT EXECUTED
400524ec: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400524f0: 12 80 00 0a bne 40052518 <rtems_rfs_dir_del_entry+0x3c>
<== NOT EXECUTED
400524f4: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
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);
400524f8: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
400524fc: 7f ff f7 89 call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
40052500: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052504: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052508: 04 80 00 11 ble 4005254c <rtems_rfs_dir_del_entry+0x70>
<== NOT EXECUTED
4005250c: 94 10 20 00 clr %o2
<== NOT EXECUTED
}
rtems_rfs_buffer_handle_close (fs, &buffer);
rtems_rfs_block_map_close (fs, &map);
return rc;
}
40052510: 81 c7 e0 08 ret
<== NOT EXECUTED
40052514: 91 e8 00 12 restore %g0, %l2, %o0
<== NOT EXECUTED
printf ("rtems-rfs: dir-del-entry: dir=%" PRId32 ", entry=%" PRId32 " offset=%" PRIu32 "\n",
40052518: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
4005251c: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
40052520: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40052524: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40052528: 7f ff a6 08 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005252c: 90 12 23 a0 or %o0, 0x3a0, %o0 ! 40086ba0 <MSDOS_DOT_NAME+0xa78>
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, dir, &map);
40052530: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40052534: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40052538: 7f ff f7 7a call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
4005253c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052540: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052544: 14 bf ff f3 bg 40052510 <rtems_rfs_dir_del_entry+0x34>
<== NOT EXECUTED
40052548: 94 10 20 00 clr %o2
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, offset, &block);
4005254c: 98 07 bf a0 add %fp, -96, %o4
<== NOT EXECUTED
40052550: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
40052554: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052558: 7f ff f8 9d call 400507cc <rtems_rfs_block_map_seek>
<== NOT EXECUTED
4005255c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052560: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052564: 04 80 00 0a ble 4005258c <rtems_rfs_dir_del_entry+0xb0>
<== NOT EXECUTED
40052568: 80 a4 a0 06 cmp %l2, 6
<== NOT EXECUTED
if (rc == ENXIO)
4005256c: 22 80 00 02 be,a 40052574 <rtems_rfs_dir_del_entry+0x98>
<== NOT EXECUTED
40052570: a4 10 20 02 mov 2, %l2
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052574: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052578: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
4005257c: 7f ff f7 c8 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40052580: b0 10 00 12 mov %l2, %i0
<== NOT EXECUTED
}
40052584: 81 c7 e0 08 ret
<== NOT EXECUTED
40052588: 81 e8 00 00 restore
<== NOT EXECUTED
handle->dirty = false;
4005258c: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052590: 27 00 00 3f sethi %hi(0xfc00), %l3
<== NOT EXECUTED
handle->bnum = 0;
40052594: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
40052598: a6 14 e3 ff or %l3, 0x3ff, %l3
<== NOT EXECUTED
handle->buffer = NULL;
4005259c: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, true);
400525a0: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
400525a4: d4 07 bf a0 ld [ %fp + -96 ], %o2
<== NOT EXECUTED
400525a8: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
400525ac: 7f ff fb 77 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
400525b0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
400525b4: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
400525b8: 14 80 00 c5 bg 400528cc <rtems_rfs_dir_del_entry+0x3f0>
<== NOT EXECUTED
400525bc: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
if (search)
400525c0: 02 80 00 46 be 400526d8 <rtems_rfs_dir_del_entry+0x1fc>
<== NOT EXECUTED
400525c4: c8 06 20 08 ld [ %i0 + 8 ], %g4
<== NOT EXECUTED
eoffset = offset % rtems_rfs_fs_block_size (fs);
400525c8: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
400525cc: 01 00 00 00 nop
<== NOT EXECUTED
400525d0: 01 00 00 00 nop
<== NOT EXECUTED
400525d4: 01 00 00 00 nop
<== NOT EXECUTED
400525d8: 82 76 c0 04 udiv %i3, %g4, %g1
<== NOT EXECUTED
400525dc: 82 58 40 04 smul %g1, %g4, %g1
<== NOT EXECUTED
400525e0: 82 26 c0 01 sub %i3, %g1, %g1
<== NOT EXECUTED
400525e4: a2 10 00 01 mov %g1, %l1
<== NOT EXECUTED
entry = rtems_rfs_buffer_data (&buffer) + eoffset;
400525e8: c4 07 bf ac ld [ %fp + -84 ], %g2
<== NOT EXECUTED
400525ec: c4 00 a0 1c ld [ %g2 + 0x1c ], %g2
<== NOT EXECUTED
while (eoffset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
400525f0: 9e 01 3f f6 add %g4, -10, %o7
<== NOT EXECUTED
400525f4: 80 a3 c0 01 cmp %o7, %g1
<== NOT EXECUTED
400525f8: 08 80 00 2b bleu 400526a4 <rtems_rfs_dir_del_entry+0x1c8>
<== NOT EXECUTED
400525fc: ba 00 80 01 add %g2, %g1, %i5
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052600: c6 0f 60 08 ldub [ %i5 + 8 ], %g3
<== NOT EXECUTED
40052604: f8 0f 60 09 ldub [ %i5 + 9 ], %i4
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052608: 10 80 00 1a b 40052670 <rtems_rfs_dir_del_entry+0x194>
<== NOT EXECUTED
4005260c: c4 08 80 01 ldub [ %g2 + %g1 ], %g2
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, eino))
40052610: 80 a7 20 0a cmp %i4, 0xa
<== NOT EXECUTED
40052614: 04 80 00 34 ble 400526e4 <rtems_rfs_dir_del_entry+0x208>
<== NOT EXECUTED
40052618: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005261c: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
40052620: 80 a0 40 1c cmp %g1, %i4
<== NOT EXECUTED
40052624: 08 80 00 30 bleu 400526e4 <rtems_rfs_dir_del_entry+0x208>
<== NOT EXECUTED
40052628: 80 a4 20 00 cmp %l0, 0
<== NOT EXECUTED
4005262c: 02 80 00 2f be 400526e8 <rtems_rfs_dir_del_entry+0x20c>
<== NOT EXECUTED
40052630: 13 10 00 00 sethi %hi(0x40000000), %o1
<== NOT EXECUTED
40052634: c2 06 20 14 ld [ %i0 + 0x14 ], %g1
<== NOT EXECUTED
40052638: 80 a0 40 10 cmp %g1, %l0
<== NOT EXECUTED
4005263c: 0a 80 00 2a bcs 400526e4 <rtems_rfs_dir_del_entry+0x208>
<== NOT EXECUTED
40052640: 80 a6 80 10 cmp %i2, %l0
<== NOT EXECUTED
if (ino == rtems_rfs_dir_entry_ino (entry))
40052644: 02 80 00 43 be 40052750 <rtems_rfs_dir_del_entry+0x274>
<== NOT EXECUTED
40052648: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
if (!search)
4005264c: 32 80 00 19 bne,a 400526b0 <rtems_rfs_dir_del_entry+0x1d4>
<== NOT EXECUTED
40052650: a4 10 20 05 mov 5, %l2
<== NOT EXECUTED
eoffset += elength;
40052654: a2 04 40 1c add %l1, %i4, %l1
<== NOT EXECUTED
while (eoffset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40052658: 80 a4 40 0f cmp %l1, %o7
<== NOT EXECUTED
4005265c: 1a 80 00 12 bcc 400526a4 <rtems_rfs_dir_del_entry+0x1c8>
<== NOT EXECUTED
40052660: ba 07 40 1c add %i5, %i4, %i5
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052664: c6 0f 60 08 ldub [ %i5 + 8 ], %g3
<== NOT EXECUTED
40052668: f8 0f 60 09 ldub [ %i5 + 9 ], %i4
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
4005266c: c4 0f 40 00 ldub [ %i5 ], %g2
<== NOT EXECUTED
40052670: c2 0f 60 01 ldub [ %i5 + 1 ], %g1
<== NOT EXECUTED
40052674: d6 0f 60 02 ldub [ %i5 + 2 ], %o3
<== NOT EXECUTED
40052678: e0 0f 60 03 ldub [ %i5 + 3 ], %l0
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
4005267c: 87 28 e0 08 sll %g3, 8, %g3
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052680: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052684: b8 17 00 03 or %i4, %g3, %i4
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052688: 83 28 60 10 sll %g1, 0x10, %g1
<== NOT EXECUTED
4005268c: 97 2a e0 08 sll %o3, 8, %o3
<== NOT EXECUTED
40052690: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052694: 80 a7 00 13 cmp %i4, %l3
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052698: 96 12 c0 01 or %o3, %g1, %o3
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
4005269c: 12 bf ff dd bne 40052610 <rtems_rfs_dir_del_entry+0x134>
<== NOT EXECUTED
400526a0: a0 14 00 0b or %l0, %o3, %l0
<== NOT EXECUTED
if (rc == 0)
400526a4: 80 a4 a0 00 cmp %l2, 0
<== NOT EXECUTED
400526a8: 02 80 00 1f be 40052724 <rtems_rfs_dir_del_entry+0x248>
<== NOT EXECUTED
400526ac: 94 07 bf a0 add %fp, -96, %o2
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400526b0: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
400526b4: 7f ff fb fc call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400526b8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
400526bc: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
400526c0: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
400526c4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
400526c8: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
400526cc: 7f ff f7 74 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400526d0: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
return rc;
400526d4: 30 bf ff 8f b,a 40052510 <rtems_rfs_dir_del_entry+0x34>
<== NOT EXECUTED
400526d8: 82 10 20 00 clr %g1
<== NOT EXECUTED
eoffset = 0;
400526dc: 10 bf ff c3 b 400525e8 <rtems_rfs_dir_del_entry+0x10c>
<== NOT EXECUTED
400526e0: a2 10 20 00 clr %l1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))
400526e4: 13 10 00 00 sethi %hi(0x40000000), %o1
<== NOT EXECUTED
400526e8: 40 00 16 2e call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400526ec: a4 10 20 05 mov 5, %l2
<== NOT EXECUTED
400526f0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400526f4: 22 bf ff f0 be,a 400526b4 <rtems_rfs_dir_del_entry+0x1d8>
<== NOT EXECUTED
400526f8: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-del-entry: "
400526fc: d8 07 bf a0 ld [ %fp + -96 ], %o4
<== NOT EXECUTED
40052700: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
40052704: 9a 10 00 11 mov %l1, %o5
<== NOT EXECUTED
40052708: 96 10 00 10 mov %l0, %o3
<== NOT EXECUTED
4005270c: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
40052710: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
40052714: 7f ff a5 8d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052718: 90 12 20 28 or %o0, 0x28, %o0 ! 40086c28 <MSDOS_DOT_NAME+0xb00>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
4005271c: 10 bf ff e6 b 400526b4 <rtems_rfs_dir_del_entry+0x1d8>
<== NOT EXECUTED
40052720: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
rc = rtems_rfs_block_map_next_block (fs, &map, &block);
40052724: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052728: 7f ff f8 47 call 40050844 <rtems_rfs_block_map_next_block>
<== NOT EXECUTED
4005272c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc == ENXIO)
40052730: 80 a2 20 06 cmp %o0, 6
<== NOT EXECUTED
40052734: 02 80 00 77 be 40052910 <rtems_rfs_dir_del_entry+0x434>
<== NOT EXECUTED
40052738: a4 10 00 08 mov %o0, %l2
<== NOT EXECUTED
while (rc == 0)
4005273c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052740: 02 bf ff 99 be 400525a4 <rtems_rfs_dir_del_entry+0xc8>
<== NOT EXECUTED
40052744: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40052748: 10 bf ff db b 400526b4 <rtems_rfs_dir_del_entry+0x1d8>
<== NOT EXECUTED
4005274c: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
memmove (entry, entry + elength, remaining);
40052750: 92 07 40 1c add %i5, %i4, %o1
<== NOT EXECUTED
40052754: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
remaining = rtems_rfs_fs_block_size (fs) - (eoffset + elength);
40052758: b6 04 40 1c add %l1, %i4, %i3
<== NOT EXECUTED
4005275c: b6 21 00 1b sub %g4, %i3, %i3
<== NOT EXECUTED
memmove (entry, entry + elength, remaining);
40052760: 40 00 3a 58 call 400610c0 <memmove>
<== NOT EXECUTED
40052764: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
memset (entry + remaining, 0xff, elength);
40052768: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
4005276c: 92 10 20 ff mov 0xff, %o1
<== NOT EXECUTED
40052770: 40 00 3a a2 call 400611f8 <memset>
<== NOT EXECUTED
40052774: 90 07 40 1b add %i5, %i3, %o0
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052778: c2 0f 60 08 ldub [ %i5 + 8 ], %g1
<== NOT EXECUTED
4005277c: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40052780: fa 0f 60 09 ldub [ %i5 + 9 ], %i5
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))
40052784: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052788: 13 10 00 00 sethi %hi(0x40000000), %o1
<== NOT EXECUTED
4005278c: 40 00 16 05 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052790: ba 17 40 01 or %i5, %g1, %i5
<== NOT EXECUTED
40052794: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052798: 22 80 00 17 be,a 400527f4 <rtems_rfs_dir_del_entry+0x318>
<== NOT EXECUTED
4005279c: 03 3f ff c0 sethi %hi(0xffff0000), %g1
<== NOT EXECUTED
rtems_rfs_block_map_last (&map) ? "yes" : "no");
400527a0: c4 07 bf c0 ld [ %fp + -64 ], %g2
<== NOT EXECUTED
printf ("rtems-rfs: dir-del-entry: "
400527a4: d6 07 bf a0 ld [ %fp + -96 ], %o3
<== NOT EXECUTED
400527a8: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
400527ac: 12 80 00 05 bne 400527c0 <rtems_rfs_dir_del_entry+0x2e4>
<== NOT EXECUTED
400527b0: c2 07 bf b8 ld [ %fp + -72 ], %g1
<== NOT EXECUTED
rtems_rfs_block_map_last (&map) ? "yes" : "no");
400527b4: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400527b8: 02 80 00 3d be 400528ac <rtems_rfs_dir_del_entry+0x3d0>
<== NOT EXECUTED
400527bc: 1b 10 02 02 sethi %hi(0x40080800), %o5
<== NOT EXECUTED
400527c0: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
400527c4: 80 a0 80 01 cmp %g2, %g1
<== NOT EXECUTED
400527c8: 02 80 00 39 be 400528ac <rtems_rfs_dir_del_entry+0x3d0>
<== NOT EXECUTED
400527cc: 1b 10 02 02 sethi %hi(0x40080800), %o5
<== NOT EXECUTED
printf ("rtems-rfs: dir-del-entry: "
400527d0: 1b 10 02 02 sethi %hi(0x40080800), %o5
<== NOT EXECUTED
400527d4: 9a 13 61 d8 or %o5, 0x1d8, %o5 ! 400809d8 <rtems_rtc_shell_usage+0x550>
<== NOT EXECUTED
400527d8: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
400527dc: 98 10 00 11 mov %l1, %o4
<== NOT EXECUTED
400527e0: 94 10 00 1d mov %i5, %o2
<== NOT EXECUTED
400527e4: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
400527e8: 7f ff a5 58 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400527ec: 90 12 20 78 or %o0, 0x78, %o0
<== NOT EXECUTED
if ((elength == RTEMS_RFS_DIR_ENTRY_EMPTY) &&
400527f0: 03 3f ff c0 sethi %hi(0xffff0000), %g1
<== NOT EXECUTED
400527f4: ba 38 40 1d xnor %g1, %i5, %i5
<== NOT EXECUTED
400527f8: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
400527fc: 12 80 00 1f bne 40052878 <rtems_rfs_dir_del_entry+0x39c>
<== NOT EXECUTED
40052800: 80 a4 60 00 cmp %l1, 0
<== NOT EXECUTED
40052804: 12 80 00 1d bne 40052878 <rtems_rfs_dir_del_entry+0x39c>
<== NOT EXECUTED
40052808: c4 07 bf c0 ld [ %fp + -64 ], %g2
<== NOT EXECUTED
(eoffset == 0) && rtems_rfs_block_map_last (&map))
4005280c: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40052810: 12 80 00 29 bne 400528b4 <rtems_rfs_dir_del_entry+0x3d8>
<== NOT EXECUTED
40052814: c2 07 bf b8 ld [ %fp + -72 ], %g1
<== NOT EXECUTED
40052818: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4005281c: 12 80 00 27 bne 400528b8 <rtems_rfs_dir_del_entry+0x3dc>
<== NOT EXECUTED
40052820: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
rc = rtems_rfs_block_map_shrink (fs, &map, 1);
40052824: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40052828: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
4005282c: 7f ff f9 10 call 40050c6c <rtems_rfs_block_map_shrink>
<== NOT EXECUTED
40052830: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052834: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40052838: 04 80 00 10 ble 40052878 <rtems_rfs_dir_del_entry+0x39c>
<== NOT EXECUTED
4005283c: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))
40052840: 40 00 15 d8 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052844: 13 10 00 00 sethi %hi(0x40000000), %o1
<== NOT EXECUTED
40052848: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005284c: 02 80 00 0c be 4005287c <rtems_rfs_dir_del_entry+0x3a0>
<== NOT EXECUTED
40052850: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
printf ("rtems-rfs: dir-del-entry: "
40052854: f8 06 60 08 ld [ %i1 + 8 ], %i4
<== NOT EXECUTED
40052858: 40 00 47 52 call 400645a0 <strerror>
<== NOT EXECUTED
4005285c: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40052860: 94 10 00 1d mov %i5, %o2
<== NOT EXECUTED
40052864: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40052868: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
4005286c: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
40052870: 7f ff a5 36 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052874: 90 12 20 d8 or %o0, 0xd8, %o0 ! 40086cd8 <MSDOS_DOT_NAME+0xbb0>
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&buffer);
40052878: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
4005287c: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052880: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40052884: 7f ff fb 88 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40052888: c2 2f bf a4 stb %g1, [ %fp + -92 ]
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
4005288c: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
40052890: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
40052894: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
40052898: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
return 0;
4005289c: a4 10 20 00 clr %l2
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
400528a0: 7f ff f6 ff call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400528a4: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
return 0;
400528a8: 30 bf ff 1a b,a 40052510 <rtems_rfs_dir_del_entry+0x34>
<== NOT EXECUTED
printf ("rtems-rfs: dir-del-entry: "
400528ac: 10 bf ff cb b 400527d8 <rtems_rfs_dir_del_entry+0x2fc>
<== NOT EXECUTED
400528b0: 9a 13 61 e0 or %o5, 0x1e0, %o5
<== NOT EXECUTED
(eoffset == 0) && rtems_rfs_block_map_last (&map))
400528b4: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
400528b8: 80 a0 80 01 cmp %g2, %g1
<== NOT EXECUTED
400528bc: 12 bf ff f0 bne 4005287c <rtems_rfs_dir_del_entry+0x3a0>
<== NOT EXECUTED
400528c0: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
400528c4: 10 bf ff d9 b 40052828 <rtems_rfs_dir_del_entry+0x34c>
<== NOT EXECUTED
400528c8: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_DEL_ENTRY))
400528cc: 90 10 20 00 clr %o0
<== NOT EXECUTED
400528d0: 40 00 15 b4 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400528d4: 13 10 00 00 sethi %hi(0x40000000), %o1
<== NOT EXECUTED
400528d8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400528dc: 22 bf ff 76 be,a 400526b4 <rtems_rfs_dir_del_entry+0x1d8>
<== NOT EXECUTED
400528e0: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-del-entry: "
400528e4: fa 06 60 08 ld [ %i1 + 8 ], %i5
<== NOT EXECUTED
400528e8: 40 00 47 2e call 400645a0 <strerror>
<== NOT EXECUTED
400528ec: 90 10 00 12 mov %l2, %o0
<== NOT EXECUTED
400528f0: 94 10 00 12 mov %l2, %o2
<== NOT EXECUTED
400528f4: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
400528f8: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400528fc: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40052900: 7f ff a5 12 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052904: 90 12 23 e0 or %o0, 0x3e0, %o0 ! 40086be0 <MSDOS_DOT_NAME+0xab8>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40052908: 10 bf ff 6b b 400526b4 <rtems_rfs_dir_del_entry+0x1d8>
<== NOT EXECUTED
4005290c: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
rc = ENOENT;
40052910: 10 bf ff 68 b 400526b0 <rtems_rfs_dir_del_entry+0x1d4>
<== NOT EXECUTED
40052914: a4 10 20 02 mov 2, %l2
<== NOT EXECUTED
40052cd8 <rtems_rfs_dir_empty>:
int
rtems_rfs_dir_empty (rtems_rfs_file_system* fs,
rtems_rfs_inode_handle* dir)
{
40052cd8: 9d e3 bf 40 save %sp, -192, %sp
<== NOT EXECUTED
rtems_rfs_buffer_handle buffer;
rtems_rfs_block_no block;
bool empty;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))
40052cdc: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052ce0: 40 00 14 b0 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052ce4: 13 20 00 00 sethi %hi(0x80000000), %o1
<== NOT EXECUTED
40052ce8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052cec: 12 80 00 0a bne 40052d14 <rtems_rfs_dir_empty+0x3c>
<== NOT EXECUTED
40052cf0: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-empty: dir=%" PRId32 "\n", rtems_rfs_inode_ino (dir));
empty = true;
rc = rtems_rfs_block_map_open (fs, dir, &map);
40052cf4: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40052cf8: 7f ff f5 8a call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
40052cfc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052d00: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052d04: 04 80 00 0f ble 40052d40 <rtems_rfs_dir_empty+0x68>
<== NOT EXECUTED
40052d08: 94 10 20 00 clr %o2
<== NOT EXECUTED
rc = ENOTEMPTY;
rtems_rfs_buffer_handle_close (fs, &buffer);
rtems_rfs_block_map_close (fs, &map);
return rc;
}
40052d0c: 81 c7 e0 08 ret
<== NOT EXECUTED
40052d10: 91 e8 00 12 restore %g0, %l2, %o0
<== NOT EXECUTED
printf ("rtems-rfs: dir-empty: dir=%" PRId32 "\n", rtems_rfs_inode_ino (dir));
40052d14: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
40052d18: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
40052d1c: 7f ff a4 0b call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052d20: 90 12 22 08 or %o0, 0x208, %o0 ! 40086e08 <MSDOS_DOT_NAME+0xce0>
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, dir, &map);
40052d24: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40052d28: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40052d2c: 7f ff f5 7d call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
40052d30: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052d34: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052d38: 14 bf ff f5 bg 40052d0c <rtems_rfs_dir_empty+0x34>
<== NOT EXECUTED
40052d3c: 94 10 20 00 clr %o2
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);
40052d40: 96 10 20 00 clr %o3
<== NOT EXECUTED
40052d44: 98 07 bf a0 add %fp, -96, %o4
<== NOT EXECUTED
40052d48: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052d4c: 7f ff f6 a0 call 400507cc <rtems_rfs_block_map_seek>
<== NOT EXECUTED
40052d50: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052d54: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052d58: 14 80 00 67 bg 40052ef4 <rtems_rfs_dir_empty+0x21c>
<== NOT EXECUTED
40052d5c: 23 00 00 3f sethi %hi(0xfc00), %l1
<== NOT EXECUTED
handle->dirty = false;
40052d60: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
handle->bnum = 0;
40052d64: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
printf ("rtems-rfs: dir-empty: "
40052d68: 21 10 02 1b sethi %hi(0x40086c00), %l0
<== NOT EXECUTED
handle->buffer = NULL;
40052d6c: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052d70: a2 14 63 ff or %l1, 0x3ff, %l1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_EMPTY))
40052d74: b4 10 20 01 mov 1, %i2
<== NOT EXECUTED
40052d78: b6 10 20 00 clr %i3
<== NOT EXECUTED
printf ("rtems-rfs: dir-empty: "
40052d7c: a0 14 22 28 or %l0, 0x228, %l0
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, true);
40052d80: d4 07 bf a0 ld [ %fp + -96 ], %o2
<== NOT EXECUTED
40052d84: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40052d88: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052d8c: 7f ff f9 7f call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40052d90: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052d94: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052d98: 14 80 00 4b bg 40052ec4 <rtems_rfs_dir_empty+0x1ec>
<== NOT EXECUTED
40052d9c: c2 07 bf ac ld [ %fp + -84 ], %g1
<== NOT EXECUTED
while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40052da0: c8 06 20 08 ld [ %i0 + 8 ], %g4
<== NOT EXECUTED
40052da4: 88 81 3f f6 addcc %g4, -10, %g4
<== NOT EXECUTED
40052da8: 02 80 00 63 be 40052f34 <rtems_rfs_dir_empty+0x25c>
<== NOT EXECUTED
40052dac: c2 00 60 1c ld [ %g1 + 0x1c ], %g1
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052db0: d4 08 60 08 ldub [ %g1 + 8 ], %o2
<== NOT EXECUTED
40052db4: fa 08 60 09 ldub [ %g1 + 9 ], %i5
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052db8: c6 08 40 00 ldub [ %g1 ], %g3
<== NOT EXECUTED
40052dbc: c4 08 60 01 ldub [ %g1 + 1 ], %g2
<== NOT EXECUTED
40052dc0: f8 08 60 02 ldub [ %g1 + 2 ], %i4
<== NOT EXECUTED
40052dc4: d6 08 60 03 ldub [ %g1 + 3 ], %o3
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052dc8: 95 2a a0 08 sll %o2, 8, %o2
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052dcc: 87 28 e0 18 sll %g3, 0x18, %g3
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052dd0: ba 17 40 0a or %i5, %o2, %i5
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052dd4: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40052dd8: b9 2f 20 08 sll %i4, 8, %i4
<== NOT EXECUTED
40052ddc: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052de0: 80 a7 40 11 cmp %i5, %l1
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052de4: b8 17 00 02 or %i4, %g2, %i4
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052de8: 02 80 00 53 be 40052f34 <rtems_rfs_dir_empty+0x25c>
<== NOT EXECUTED
40052dec: b8 12 c0 1c or %o3, %i4, %i4
<== NOT EXECUTED
offset = 0;
40052df0: 10 80 00 20 b 40052e70 <rtems_rfs_dir_empty+0x198>
<== NOT EXECUTED
40052df4: a6 10 20 00 clr %l3
<== NOT EXECUTED
(entry[RTEMS_RFS_DIR_ENTRY_SIZE] != '.')) &&
40052df8: 12 80 00 31 bne 40052ebc <rtems_rfs_dir_empty+0x1e4>
<== NOT EXECUTED
40052dfc: 80 a4 a0 00 cmp %l2, 0
<== NOT EXECUTED
((elength != (RTEMS_RFS_DIR_ENTRY_SIZE + 2)) ||
40052e00: c4 08 60 0a ldub [ %g1 + 0xa ], %g2
<== NOT EXECUTED
40052e04: 80 a0 a0 2e cmp %g2, 0x2e
<== NOT EXECUTED
40052e08: 12 80 00 2d bne 40052ebc <rtems_rfs_dir_empty+0x1e4>
<== NOT EXECUTED
40052e0c: 80 a4 a0 00 cmp %l2, 0
<== NOT EXECUTED
(entry[RTEMS_RFS_DIR_ENTRY_SIZE] != '.') ||
40052e10: c4 08 60 0b ldub [ %g1 + 0xb ], %g2
<== NOT EXECUTED
40052e14: 80 a0 a0 2e cmp %g2, 0x2e
<== NOT EXECUTED
40052e18: 12 80 00 29 bne 40052ebc <rtems_rfs_dir_empty+0x1e4>
<== NOT EXECUTED
40052e1c: 80 a4 a0 00 cmp %l2, 0
<== NOT EXECUTED
offset += elength;
40052e20: a6 04 c0 1d add %l3, %i5, %l3
<== NOT EXECUTED
while (offset < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40052e24: 80 a4 c0 04 cmp %l3, %g4
<== NOT EXECUTED
40052e28: 1a 80 00 43 bcc 40052f34 <rtems_rfs_dir_empty+0x25c>
<== NOT EXECUTED
40052e2c: 82 00 40 1d add %g1, %i5, %g1
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052e30: d4 08 60 08 ldub [ %g1 + 8 ], %o2
<== NOT EXECUTED
40052e34: fa 08 60 09 ldub [ %g1 + 9 ], %i5
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052e38: c6 08 40 00 ldub [ %g1 ], %g3
<== NOT EXECUTED
40052e3c: c4 08 60 01 ldub [ %g1 + 1 ], %g2
<== NOT EXECUTED
40052e40: d6 08 60 02 ldub [ %g1 + 2 ], %o3
<== NOT EXECUTED
40052e44: f8 08 60 03 ldub [ %g1 + 3 ], %i4
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052e48: 95 2a a0 08 sll %o2, 8, %o2
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052e4c: 87 28 e0 18 sll %g3, 0x18, %g3
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052e50: ba 17 40 0a or %i5, %o2, %i5
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052e54: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40052e58: 97 2a e0 08 sll %o3, 8, %o3
<== NOT EXECUTED
40052e5c: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052e60: 80 a7 40 11 cmp %i5, %l1
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052e64: 96 12 c0 02 or %o3, %g2, %o3
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40052e68: 02 80 00 33 be 40052f34 <rtems_rfs_dir_empty+0x25c>
<== NOT EXECUTED
40052e6c: b8 17 00 0b or %i4, %o3, %i4
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, eino))
40052e70: 80 a7 60 0a cmp %i5, 0xa
<== NOT EXECUTED
40052e74: 04 80 00 26 ble 40052f0c <rtems_rfs_dir_empty+0x234>
<== NOT EXECUTED
40052e78: 90 10 00 1a mov %i2, %o0
<== NOT EXECUTED
40052e7c: c4 06 20 1c ld [ %i0 + 0x1c ], %g2
<== NOT EXECUTED
40052e80: 80 a0 80 1d cmp %g2, %i5
<== NOT EXECUTED
40052e84: 08 80 00 22 bleu 40052f0c <rtems_rfs_dir_empty+0x234>
<== NOT EXECUTED
40052e88: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
40052e8c: 02 80 00 20 be 40052f0c <rtems_rfs_dir_empty+0x234>
<== NOT EXECUTED
40052e90: 01 00 00 00 nop
<== NOT EXECUTED
40052e94: c4 06 20 14 ld [ %i0 + 0x14 ], %g2
<== NOT EXECUTED
40052e98: 80 a0 80 1c cmp %g2, %i4
<== NOT EXECUTED
40052e9c: 0a 80 00 1c bcs 40052f0c <rtems_rfs_dir_empty+0x234>
<== NOT EXECUTED
40052ea0: 80 a7 60 0b cmp %i5, 0xb
<== NOT EXECUTED
if (((elength != (RTEMS_RFS_DIR_ENTRY_SIZE + 1)) ||
40052ea4: 12 bf ff d5 bne 40052df8 <rtems_rfs_dir_empty+0x120>
<== NOT EXECUTED
40052ea8: 80 a7 60 0c cmp %i5, 0xc
<== NOT EXECUTED
40052eac: c4 08 60 0a ldub [ %g1 + 0xa ], %g2
<== NOT EXECUTED
40052eb0: 80 a0 a0 2e cmp %g2, 0x2e
<== NOT EXECUTED
40052eb4: 02 bf ff db be 40052e20 <rtems_rfs_dir_empty+0x148>
<== NOT EXECUTED
40052eb8: 80 a4 a0 00 cmp %l2, 0
<== NOT EXECUTED
if ((rc == 0) && !empty)
40052ebc: 22 80 00 02 be,a 40052ec4 <rtems_rfs_dir_empty+0x1ec>
<== NOT EXECUTED
40052ec0: a4 10 20 5a mov 0x5a, %l2
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40052ec4: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052ec8: 7f ff f9 f7 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40052ecc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052ed0: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
40052ed4: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
40052ed8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
40052edc: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
}
40052ee0: b0 10 00 12 mov %l2, %i0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052ee4: 7f ff f5 6e call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40052ee8: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
}
40052eec: 81 c7 e0 08 ret
<== NOT EXECUTED
40052ef0: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052ef4: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052ef8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40052efc: 7f ff f5 68 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40052f00: b0 10 00 12 mov %l2, %i0
<== NOT EXECUTED
}
40052f04: 81 c7 e0 08 ret
<== NOT EXECUTED
40052f08: 81 e8 00 00 restore
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_EMPTY))
40052f0c: 40 00 14 25 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052f10: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
40052f14: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052f18: 02 80 00 07 be 40052f34 <rtems_rfs_dir_empty+0x25c>
<== NOT EXECUTED
40052f1c: 98 10 00 13 mov %l3, %o4
<== NOT EXECUTED
printf ("rtems-rfs: dir-empty: "
40052f20: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
40052f24: 96 10 00 1c mov %i4, %o3
<== NOT EXECUTED
40052f28: 94 10 00 1d mov %i5, %o2
<== NOT EXECUTED
40052f2c: 7f ff a3 87 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052f30: 90 10 00 10 mov %l0, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_next_block (fs, &map, &block);
40052f34: 94 07 bf a0 add %fp, -96, %o2
<== NOT EXECUTED
40052f38: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052f3c: 7f ff f6 42 call 40050844 <rtems_rfs_block_map_next_block>
<== NOT EXECUTED
40052f40: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052f44: a4 92 20 00 orcc %o0, 0, %l2
<== NOT EXECUTED
40052f48: 04 bf ff 8f ble 40052d84 <rtems_rfs_dir_empty+0xac>
<== NOT EXECUTED
40052f4c: d4 07 bf a0 ld [ %fp + -96 ], %o2
<== NOT EXECUTED
rc = 0;
40052f50: 82 1c a0 06 xor %l2, 6, %g1
<== NOT EXECUTED
40052f54: 80 a0 00 01 cmp %g0, %g1
<== NOT EXECUTED
40052f58: 82 60 20 00 subx %g0, 0, %g1
<== NOT EXECUTED
40052f5c: 10 bf ff da b 40052ec4 <rtems_rfs_dir_empty+0x1ec>
<== NOT EXECUTED
40052f60: a4 0c 80 01 and %l2, %g1, %l2
<== NOT EXECUTED
4005c040 <rtems_rfs_dir_hash>:
*/
#define initval (20010928)
uint32_t
rtems_rfs_dir_hash (const void *key, size_t length)
{
4005c040: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
4005c044: 82 10 00 18 mov %i0, %g1
<== NOT EXECUTED
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;
4005c048: 31 37 f7 c5 sethi %hi(0xdfdf1400), %i0
<== NOT EXECUTED
4005c04c: b0 16 22 9f or %i0, 0x29f, %i0 ! dfdf169f <RAM_END+0x9f9f169f>
<== NOT EXECUTED
} 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)
4005c050: 80 a6 60 0c cmp %i1, 0xc
<== NOT EXECUTED
a = b = c = 0xdeadbeef + ((uint32_t)length) + initval;
4005c054: b6 06 40 18 add %i1, %i0, %i3
<== NOT EXECUTED
4005c058: b0 10 00 1b mov %i3, %i0
<== NOT EXECUTED
while (length > 12)
4005c05c: 08 80 00 4b bleu 4005c188 <rtems_rfs_dir_hash+0x148>
<== NOT EXECUTED
4005c060: b8 10 00 1b mov %i3, %i4
<== NOT EXECUTED
a += k[0];
a += ((uint32_t)k[1])<<8;
a += ((uint32_t)k[2])<<16;
a += ((uint32_t)k[3])<<24;
b += k[4];
b += ((uint32_t)k[5])<<8;
4005c064: fa 08 60 05 ldub [ %g1 + 5 ], %i5
<== NOT EXECUTED
b += ((uint32_t)k[6])<<16;
4005c068: c4 08 60 06 ldub [ %g1 + 6 ], %g2
<== NOT EXECUTED
b += ((uint32_t)k[7])<<24;
c += k[8];
c += ((uint32_t)k[9])<<8;
c += ((uint32_t)k[10])<<16;
4005c06c: d6 08 60 0a ldub [ %g1 + 0xa ], %o3
<== NOT EXECUTED
b += ((uint32_t)k[5])<<8;
4005c070: bb 2f 60 08 sll %i5, 8, %i5
<== NOT EXECUTED
c += ((uint32_t)k[9])<<8;
4005c074: c6 08 60 09 ldub [ %g1 + 9 ], %g3
<== NOT EXECUTED
c += ((uint32_t)k[11])<<24;
4005c078: d8 08 60 0b ldub [ %g1 + 0xb ], %o4
<== NOT EXECUTED
b += ((uint32_t)k[6])<<16;
4005c07c: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
b += ((uint32_t)k[7])<<24;
4005c080: 84 07 40 02 add %i5, %g2, %g2
<== NOT EXECUTED
c += ((uint32_t)k[10])<<16;
4005c084: bb 2a e0 10 sll %o3, 0x10, %i5
<== NOT EXECUTED
c += k[8];
4005c088: d2 08 60 08 ldub [ %g1 + 8 ], %o1
<== NOT EXECUTED
a += ((uint32_t)k[2])<<16;
4005c08c: de 08 60 02 ldub [ %g1 + 2 ], %o7
<== NOT EXECUTED
c += ((uint32_t)k[9])<<8;
4005c090: 87 28 e0 08 sll %g3, 8, %g3
<== NOT EXECUTED
c += ((uint32_t)k[11])<<24;
4005c094: 86 00 c0 1d add %g3, %i5, %g3
<== NOT EXECUTED
4005c098: bb 2b 20 18 sll %o4, 0x18, %i5
<== NOT EXECUTED
a += ((uint32_t)k[1])<<8;
4005c09c: c8 08 60 01 ldub [ %g1 + 1 ], %g4
<== NOT EXECUTED
a += ((uint32_t)k[3])<<24;
4005c0a0: f4 08 60 03 ldub [ %g1 + 3 ], %i2
<== NOT EXECUTED
c += ((uint32_t)k[11])<<24;
4005c0a4: 86 00 c0 09 add %g3, %o1, %g3
<== NOT EXECUTED
4005c0a8: 86 00 c0 1d add %g3, %i5, %g3
<== NOT EXECUTED
a += ((uint32_t)k[2])<<16;
4005c0ac: bb 2b e0 10 sll %o7, 0x10, %i5
<== NOT EXECUTED
c += ((uint32_t)k[11])<<24;
4005c0b0: b0 00 c0 18 add %g3, %i0, %i0
<== NOT EXECUTED
a += k[0];
4005c0b4: da 08 40 00 ldub [ %g1 ], %o5
<== NOT EXECUTED
a += ((uint32_t)k[1])<<8;
4005c0b8: 89 29 20 08 sll %g4, 8, %g4
<== NOT EXECUTED
mix(a,b,c);
4005c0bc: 86 01 00 1d add %g4, %i5, %g3
<== NOT EXECUTED
a += ((uint32_t)k[3])<<24;
4005c0c0: bb 2e a0 18 sll %i2, 0x18, %i5
<== NOT EXECUTED
b += k[4];
4005c0c4: d0 08 60 04 ldub [ %g1 + 4 ], %o0
<== NOT EXECUTED
b += ((uint32_t)k[7])<<24;
4005c0c8: d4 08 60 07 ldub [ %g1 + 7 ], %o2
<== NOT EXECUTED
mix(a,b,c);
4005c0cc: 89 2e 20 04 sll %i0, 4, %g4
<== NOT EXECUTED
4005c0d0: 86 00 c0 0d add %g3, %o5, %g3
<== NOT EXECUTED
4005c0d4: 86 00 c0 1d add %g3, %i5, %g3
<== NOT EXECUTED
4005c0d8: bb 36 20 1c srl %i0, 0x1c, %i5
<== NOT EXECUTED
4005c0dc: 88 11 00 1d or %g4, %i5, %g4
<== NOT EXECUTED
b += ((uint32_t)k[7])<<24;
4005c0e0: 95 2a a0 18 sll %o2, 0x18, %o2
<== NOT EXECUTED
4005c0e4: 84 00 80 08 add %g2, %o0, %g2
<== NOT EXECUTED
4005c0e8: 84 00 80 0a add %g2, %o2, %g2
<== NOT EXECUTED
4005c0ec: 84 00 80 1c add %g2, %i4, %g2
<== NOT EXECUTED
mix(a,b,c);
4005c0f0: b8 06 00 02 add %i0, %g2, %i4
<== NOT EXECUTED
4005c0f4: b0 20 c0 18 sub %g3, %i0, %i0
<== NOT EXECUTED
4005c0f8: b0 06 00 1b add %i0, %i3, %i0
<== NOT EXECUTED
4005c0fc: b0 19 00 18 xor %g4, %i0, %i0
<== NOT EXECUTED
4005c100: b6 06 00 1c add %i0, %i4, %i3
<== NOT EXECUTED
4005c104: 89 2e 20 06 sll %i0, 6, %g4
<== NOT EXECUTED
4005c108: 84 20 80 18 sub %g2, %i0, %g2
<== NOT EXECUTED
4005c10c: b1 36 20 1a srl %i0, 0x1a, %i0
<== NOT EXECUTED
4005c110: b0 11 00 18 or %g4, %i0, %i0
<== NOT EXECUTED
4005c114: 84 1e 00 02 xor %i0, %g2, %g2
<== NOT EXECUTED
4005c118: ba 00 80 1b add %g2, %i3, %i5
<== NOT EXECUTED
4005c11c: b8 27 00 02 sub %i4, %g2, %i4
<== NOT EXECUTED
4005c120: 87 28 a0 08 sll %g2, 8, %g3
<== NOT EXECUTED
4005c124: 85 30 a0 18 srl %g2, 0x18, %g2
<== NOT EXECUTED
4005c128: 86 10 c0 02 or %g3, %g2, %g3
<== NOT EXECUTED
4005c12c: 86 18 c0 1c xor %g3, %i4, %g3
<== NOT EXECUTED
4005c130: 88 00 c0 1d add %g3, %i5, %g4
<== NOT EXECUTED
4005c134: b6 26 c0 03 sub %i3, %g3, %i3
<== NOT EXECUTED
4005c138: b1 28 e0 10 sll %g3, 0x10, %i0
<== NOT EXECUTED
4005c13c: 87 30 e0 10 srl %g3, 0x10, %g3
<== NOT EXECUTED
4005c140: 86 16 00 03 or %i0, %g3, %g3
<== NOT EXECUTED
4005c144: b0 18 c0 1b xor %g3, %i3, %i0
<== NOT EXECUTED
4005c148: 87 2e 20 13 sll %i0, 0x13, %g3
<== NOT EXECUTED
4005c14c: b6 06 00 04 add %i0, %g4, %i3
<== NOT EXECUTED
4005c150: ba 27 40 18 sub %i5, %i0, %i5
<== NOT EXECUTED
4005c154: 85 36 20 0d srl %i0, 0xd, %g2
<== NOT EXECUTED
length -= 12;
4005c158: b2 06 7f f4 add %i1, -12, %i1
<== NOT EXECUTED
mix(a,b,c);
4005c15c: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
k += 12;
4005c160: 82 00 60 0c add %g1, 0xc, %g1
<== NOT EXECUTED
mix(a,b,c);
4005c164: 84 18 80 1d xor %g2, %i5, %g2
<== NOT EXECUTED
while (length > 12)
4005c168: 80 a6 60 0c cmp %i1, 0xc
<== NOT EXECUTED
mix(a,b,c);
4005c16c: 88 21 00 02 sub %g4, %g2, %g4
<== NOT EXECUTED
4005c170: b1 28 a0 04 sll %g2, 4, %i0
<== NOT EXECUTED
4005c174: 87 30 a0 1c srl %g2, 0x1c, %g3
<== NOT EXECUTED
4005c178: b8 00 80 1b add %g2, %i3, %i4
<== NOT EXECUTED
4005c17c: b0 16 00 03 or %i0, %g3, %i0
<== NOT EXECUTED
while (length > 12)
4005c180: 18 bf ff b9 bgu 4005c064 <rtems_rfs_dir_hash+0x24>
<== NOT EXECUTED
4005c184: b0 1e 00 04 xor %i0, %g4, %i0
<== NOT EXECUTED
}
/*-------------------------------- last block: affect all 32 bits of (c) */
switch(length) /* all the case statements fall through */
4005c188: b3 2e 60 02 sll %i1, 2, %i1
<== NOT EXECUTED
4005c18c: 05 10 01 70 sethi %hi(0x4005c000), %g2
<== NOT EXECUTED
4005c190: 84 10 a0 0c or %g2, 0xc, %g2 ! 4005c00c <rtems_rfs_buffer_bdbuf_release+0x8c>
<== NOT EXECUTED
4005c194: c4 00 80 19 ld [ %g2 + %i1 ], %g2
<== NOT EXECUTED
4005c198: 81 c0 80 00 jmp %g2
<== NOT EXECUTED
4005c19c: 01 00 00 00 nop
<== NOT EXECUTED
{
case 12: c+=((uint32_t)k[11])<<24;
4005c1a0: c4 08 60 0b ldub [ %g1 + 0xb ], %g2
<== NOT EXECUTED
4005c1a4: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
4005c1a8: b0 06 00 02 add %i0, %g2, %i0
<== NOT EXECUTED
case 11: c+=((uint32_t)k[10])<<16;
4005c1ac: c4 08 60 0a ldub [ %g1 + 0xa ], %g2
<== NOT EXECUTED
4005c1b0: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
4005c1b4: b0 06 00 02 add %i0, %g2, %i0
<== NOT EXECUTED
case 10: c+=((uint32_t)k[9])<<8;
4005c1b8: c4 08 60 09 ldub [ %g1 + 9 ], %g2
<== NOT EXECUTED
4005c1bc: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
4005c1c0: b0 06 00 02 add %i0, %g2, %i0
<== NOT EXECUTED
case 9 : c+=k[8];
4005c1c4: c4 08 60 08 ldub [ %g1 + 8 ], %g2
<== NOT EXECUTED
4005c1c8: b0 06 00 02 add %i0, %g2, %i0
<== NOT EXECUTED
case 8 : b+=((uint32_t)k[7])<<24;
4005c1cc: c4 08 60 07 ldub [ %g1 + 7 ], %g2
<== NOT EXECUTED
4005c1d0: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
4005c1d4: b8 07 00 02 add %i4, %g2, %i4
<== NOT EXECUTED
case 7 : b+=((uint32_t)k[6])<<16;
4005c1d8: c4 08 60 06 ldub [ %g1 + 6 ], %g2
<== NOT EXECUTED
4005c1dc: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
4005c1e0: b8 07 00 02 add %i4, %g2, %i4
<== NOT EXECUTED
case 6 : b+=((uint32_t)k[5])<<8;
4005c1e4: c4 08 60 05 ldub [ %g1 + 5 ], %g2
<== NOT EXECUTED
4005c1e8: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
4005c1ec: b8 07 00 02 add %i4, %g2, %i4
<== NOT EXECUTED
case 5 : b+=k[4];
4005c1f0: c4 08 60 04 ldub [ %g1 + 4 ], %g2
<== NOT EXECUTED
4005c1f4: b8 07 00 02 add %i4, %g2, %i4
<== NOT EXECUTED
case 4 : a+=((uint32_t)k[3])<<24;
4005c1f8: c4 08 60 03 ldub [ %g1 + 3 ], %g2
<== NOT EXECUTED
4005c1fc: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
4005c200: b6 06 c0 02 add %i3, %g2, %i3
<== NOT EXECUTED
case 3 : a+=((uint32_t)k[2])<<16;
4005c204: c4 08 60 02 ldub [ %g1 + 2 ], %g2
<== NOT EXECUTED
4005c208: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
4005c20c: b6 06 c0 02 add %i3, %g2, %i3
<== NOT EXECUTED
case 2 : a+=((uint32_t)k[1])<<8;
4005c210: c4 08 60 01 ldub [ %g1 + 1 ], %g2
<== NOT EXECUTED
4005c214: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
4005c218: b6 06 c0 02 add %i3, %g2, %i3
<== NOT EXECUTED
case 1 : a+=k[0];
4005c21c: c2 08 40 00 ldub [ %g1 ], %g1
<== NOT EXECUTED
break;
case 0 : return c;
}
}
final(a,b,c);
4005c220: 85 37 20 12 srl %i4, 0x12, %g2
<== NOT EXECUTED
case 1 : a+=k[0];
4005c224: b6 00 40 1b add %g1, %i3, %i3
<== NOT EXECUTED
final(a,b,c);
4005c228: 83 2f 20 0e sll %i4, 0xe, %g1
<== NOT EXECUTED
4005c22c: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
4005c230: b0 1f 00 18 xor %i4, %i0, %i0
<== NOT EXECUTED
4005c234: b0 26 00 01 sub %i0, %g1, %i0
<== NOT EXECUTED
4005c238: 85 36 20 15 srl %i0, 0x15, %g2
<== NOT EXECUTED
4005c23c: 83 2e 20 0b sll %i0, 0xb, %g1
<== NOT EXECUTED
4005c240: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
4005c244: b6 1e c0 18 xor %i3, %i0, %i3
<== NOT EXECUTED
4005c248: b6 26 c0 01 sub %i3, %g1, %i3
<== NOT EXECUTED
4005c24c: 83 2e e0 19 sll %i3, 0x19, %g1
<== NOT EXECUTED
4005c250: 84 1f 00 1b xor %i4, %i3, %g2
<== NOT EXECUTED
4005c254: b9 36 e0 07 srl %i3, 7, %i4
<== NOT EXECUTED
4005c258: b8 17 00 01 or %i4, %g1, %i4
<== NOT EXECUTED
4005c25c: 84 20 80 1c sub %g2, %i4, %g2
<== NOT EXECUTED
4005c260: 87 30 a0 10 srl %g2, 0x10, %g3
<== NOT EXECUTED
4005c264: 83 28 a0 10 sll %g2, 0x10, %g1
<== NOT EXECUTED
4005c268: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
4005c26c: b0 1e 00 02 xor %i0, %g2, %i0
<== NOT EXECUTED
4005c270: b0 26 00 01 sub %i0, %g1, %i0
<== NOT EXECUTED
4005c274: 83 2e 20 04 sll %i0, 4, %g1
<== NOT EXECUTED
4005c278: 87 36 20 1c srl %i0, 0x1c, %g3
<== NOT EXECUTED
4005c27c: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
4005c280: b6 1e 00 1b xor %i0, %i3, %i3
<== NOT EXECUTED
4005c284: b6 26 c0 01 sub %i3, %g1, %i3
<== NOT EXECUTED
4005c288: 83 2e e0 0e sll %i3, 0xe, %g1
<== NOT EXECUTED
4005c28c: 84 1e c0 02 xor %i3, %g2, %g2
<== NOT EXECUTED
4005c290: b7 36 e0 12 srl %i3, 0x12, %i3
<== NOT EXECUTED
4005c294: b6 10 40 1b or %g1, %i3, %i3
<== NOT EXECUTED
4005c298: 84 20 80 1b sub %g2, %i3, %g2
<== NOT EXECUTED
4005c29c: b0 18 80 18 xor %g2, %i0, %i0
<== NOT EXECUTED
4005c2a0: 83 30 a0 08 srl %g2, 8, %g1
<== NOT EXECUTED
4005c2a4: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
4005c2a8: 84 10 40 02 or %g1, %g2, %g2
<== NOT EXECUTED
4005c2ac: b0 26 00 02 sub %i0, %g2, %i0
<== NOT EXECUTED
return c;
}
4005c2b0: 81 c7 e0 08 ret
<== NOT EXECUTED
4005c2b4: 81 e8 00 00 restore
<== NOT EXECUTED
40051b78 <rtems_rfs_dir_lookup_ino>:
rtems_rfs_inode_handle* inode,
const char* name,
int length,
rtems_rfs_ino* ino,
uint32_t* offset)
{
40051b78: 9d e3 bf 38 save %sp, -200, %sp
<== NOT EXECUTED
rtems_rfs_block_map map;
rtems_rfs_buffer_handle entries;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40051b7c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051b80: 40 00 19 08 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051b84: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
40051b88: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051b8c: 32 80 00 ad bne,a 40051e40 <rtems_rfs_dir_lookup_ino+0x2c8>
<== NOT EXECUTED
40051b90: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
for (c = 0; c < length; c++)
printf ("%c", name[c]);
printf (", len=%d\n", length);
}
*ino = RTEMS_RFS_EMPTY_INO;
40051b94: c0 27 00 00 clr [ %i4 ]
<== NOT EXECUTED
*offset = 0;
rc = rtems_rfs_block_map_open (fs, inode, &map);
40051b98: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
*offset = 0;
40051b9c: c0 27 40 00 clr [ %i5 ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, inode, &map);
40051ba0: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40051ba4: 7f ff f9 df call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
40051ba8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40051bac: a6 92 20 00 orcc %o0, 0, %l3
<== NOT EXECUTED
40051bb0: 24 80 00 15 ble,a 40051c04 <rtems_rfs_dir_lookup_ino+0x8c>
<== NOT EXECUTED
40051bb4: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
{
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40051bb8: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051bbc: 40 00 18 f9 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051bc0: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
40051bc4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051bc8: 32 80 00 04 bne,a 40051bd8 <rtems_rfs_dir_lookup_ino+0x60>
<== NOT EXECUTED
40051bcc: fa 06 60 08 ld [ %i1 + 8 ], %i5
<== NOT EXECUTED
}
rtems_rfs_buffer_handle_close (fs, &entries);
rtems_rfs_block_map_close (fs, &map);
return rc;
}
40051bd0: 81 c7 e0 08 ret
<== NOT EXECUTED
40051bd4: 91 e8 00 13 restore %g0, %l3, %o0
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: map open failed for ino %" PRIu32 ": %d: %s",
40051bd8: 40 00 4a 72 call 400645a0 <strerror>
<== NOT EXECUTED
40051bdc: 90 10 00 13 mov %l3, %o0
<== NOT EXECUTED
40051be0: 94 10 00 13 mov %l3, %o2
<== NOT EXECUTED
40051be4: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40051be8: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40051bec: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
}
40051bf0: b0 10 00 13 mov %l3, %i0
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: map open failed for ino %" PRIu32 ": %d: %s",
40051bf4: 7f ff a8 55 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051bf8: 90 12 23 b8 or %o0, 0x3b8, %o0
<== NOT EXECUTED
}
40051bfc: 81 c7 e0 08 ret
<== NOT EXECUTED
40051c00: 81 e8 00 00 restore
<== NOT EXECUTED
handle->dirty = false;
40051c04: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
hash = rtems_rfs_dir_hash (name, length);
40051c08: 90 10 00 1a mov %i2, %o0
<== NOT EXECUTED
handle->bnum = 0;
40051c0c: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
40051c10: 40 00 29 0c call 4005c040 <rtems_rfs_dir_hash>
<== NOT EXECUTED
40051c14: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);
40051c18: 98 07 bf a0 add %fp, -96, %o4
<== NOT EXECUTED
hash = rtems_rfs_dir_hash (name, length);
40051c1c: a4 10 00 08 mov %o0, %l2
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);
40051c20: 94 10 20 00 clr %o2
<== NOT EXECUTED
40051c24: 96 10 20 00 clr %o3
<== NOT EXECUTED
40051c28: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40051c2c: 7f ff fa e8 call 400507cc <rtems_rfs_block_map_seek>
<== NOT EXECUTED
40051c30: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40051c34: a6 92 20 00 orcc %o0, 0, %l3
<== NOT EXECUTED
40051c38: 14 80 00 95 bg 40051e8c <rtems_rfs_dir_lookup_ino+0x314>
<== NOT EXECUTED
40051c3c: 2f 10 02 1a sethi %hi(0x40086800), %l7
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: block read, ino=%" PRIu32 " bno=%" PRId32 "\n",
40051c40: 82 15 e0 38 or %l7, 0x38, %g1 ! 40086838 <MSDOS_DOT_NAME+0x710>
<== NOT EXECUTED
40051c44: c2 27 bf 9c st %g1, [ %fp + -100 ]
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40051c48: 03 10 02 1a sethi %hi(0x40086800), %g1
<== NOT EXECUTED
40051c4c: 82 10 61 b0 or %g1, 0x1b0, %g1 ! 400869b0 <MSDOS_DOT_NAME+0x888>
<== NOT EXECUTED
40051c50: c2 27 bf 98 st %g1, [ %fp + -104 ]
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40051c54: 23 00 00 3f sethi %hi(0xfc00), %l1
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40051c58: 2d 10 02 1a sethi %hi(0x40086800), %l6
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40051c5c: a2 14 63 ff or %l1, 0x3ff, %l1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO_CHECK))
40051c60: a8 10 20 00 clr %l4
<== NOT EXECUTED
40051c64: 2b 02 00 00 sethi %hi(0x8000000), %l5
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40051c68: ac 15 a1 08 or %l6, 0x108, %l6
<== NOT EXECUTED
while ((rc == 0) && block)
40051c6c: 80 a4 e0 00 cmp %l3, 0
<== NOT EXECUTED
40051c70: 12 80 00 90 bne 40051eb0 <rtems_rfs_dir_lookup_ino+0x338>
<== NOT EXECUTED
40051c74: c2 07 bf a0 ld [ %fp + -96 ], %g1
<== NOT EXECUTED
40051c78: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40051c7c: 02 80 00 fe be 40052074 <rtems_rfs_dir_lookup_ino+0x4fc>
<== NOT EXECUTED
40051c80: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40051c84: 40 00 18 c7 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051c88: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
40051c8c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051c90: 12 80 00 b5 bne 40051f64 <rtems_rfs_dir_lookup_ino+0x3ec>
<== NOT EXECUTED
40051c94: d4 07 bf c0 ld [ %fp + -64 ], %o2
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &entries, block, true);
40051c98: d4 07 bf a0 ld [ %fp + -96 ], %o2
<== NOT EXECUTED
40051c9c: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40051ca0: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40051ca4: 7f ff fd b9 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40051ca8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40051cac: a6 92 20 00 orcc %o0, 0, %l3
<== NOT EXECUTED
40051cb0: 14 80 00 c4 bg 40051fc0 <rtems_rfs_dir_lookup_ino+0x448>
<== NOT EXECUTED
40051cb4: 90 10 20 00 clr %o0
<== NOT EXECUTED
map.bpos.boff = 0;
40051cb8: c0 27 bf c4 clr [ %fp + -60 ]
<== NOT EXECUTED
while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40051cbc: d0 06 20 08 ld [ %i0 + 8 ], %o0
<== NOT EXECUTED
entry = rtems_rfs_buffer_data (&entries);
40051cc0: c2 07 bf ac ld [ %fp + -84 ], %g1
<== NOT EXECUTED
while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40051cc4: 80 a2 20 0a cmp %o0, 0xa
<== NOT EXECUTED
40051cc8: 12 80 00 0a bne 40051cf0 <rtems_rfs_dir_lookup_ino+0x178>
<== NOT EXECUTED
40051ccc: e0 00 60 1c ld [ %g1 + 0x1c ], %l0
<== NOT EXECUTED
if (rc == 0)
40051cd0: 10 80 00 47 b 40051dec <rtems_rfs_dir_lookup_ino+0x274>
<== NOT EXECUTED
40051cd4: 80 a4 e0 00 cmp %l3, 0
<== NOT EXECUTED
map.bpos.boff += elength;
40051cd8: 82 05 c0 01 add %l7, %g1, %g1
<== NOT EXECUTED
40051cdc: c2 27 bf c4 st %g1, [ %fp + -60 ]
<== NOT EXECUTED
while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40051ce0: 86 02 3f f6 add %o0, -10, %g3
<== NOT EXECUTED
40051ce4: 80 a0 40 03 cmp %g1, %g3
<== NOT EXECUTED
40051ce8: 1a 80 00 40 bcc 40051de8 <rtems_rfs_dir_lookup_ino+0x270>
<== NOT EXECUTED
40051cec: a0 04 00 17 add %l0, %l7, %l0
<== NOT EXECUTED
*ino = rtems_rfs_dir_entry_ino (entry);
40051cf0: d8 0c 00 00 ldub [ %l0 ], %o4
<== NOT EXECUTED
40051cf4: de 0c 20 01 ldub [ %l0 + 1 ], %o7
<== NOT EXECUTED
40051cf8: c2 0c 20 02 ldub [ %l0 + 2 ], %g1
<== NOT EXECUTED
40051cfc: d2 0c 20 03 ldub [ %l0 + 3 ], %o1
<== NOT EXECUTED
ehash = rtems_rfs_dir_entry_hash (entry);
40051d00: da 0c 20 04 ldub [ %l0 + 4 ], %o5
<== NOT EXECUTED
40051d04: c8 0c 20 05 ldub [ %l0 + 5 ], %g4
<== NOT EXECUTED
40051d08: c6 0c 20 06 ldub [ %l0 + 6 ], %g3
<== NOT EXECUTED
40051d0c: d6 0c 20 07 ldub [ %l0 + 7 ], %o3
<== NOT EXECUTED
40051d10: c4 0c 20 08 ldub [ %l0 + 8 ], %g2
<== NOT EXECUTED
40051d14: d4 0c 20 09 ldub [ %l0 + 9 ], %o2
<== NOT EXECUTED
*ino = rtems_rfs_dir_entry_ino (entry);
40051d18: 99 2b 20 18 sll %o4, 0x18, %o4
<== NOT EXECUTED
40051d1c: 9f 2b e0 10 sll %o7, 0x10, %o7
<== NOT EXECUTED
40051d20: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40051d24: 9e 13 c0 0c or %o7, %o4, %o7
<== NOT EXECUTED
40051d28: 82 10 40 0f or %g1, %o7, %g1
<== NOT EXECUTED
40051d2c: 92 12 40 01 or %o1, %g1, %o1
<== NOT EXECUTED
40051d30: d2 27 00 00 st %o1, [ %i4 ]
<== NOT EXECUTED
ehash = rtems_rfs_dir_entry_hash (entry);
40051d34: 9b 2b 60 18 sll %o5, 0x18, %o5
<== NOT EXECUTED
40051d38: 89 29 20 10 sll %g4, 0x10, %g4
<== NOT EXECUTED
40051d3c: 87 28 e0 08 sll %g3, 8, %g3
<== NOT EXECUTED
40051d40: 88 11 00 0d or %g4, %o5, %g4
<== NOT EXECUTED
40051d44: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40051d48: 86 10 c0 04 or %g3, %g4, %g3
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40051d4c: ae 12 80 02 or %o2, %g2, %l7
<== NOT EXECUTED
if (elength == RTEMS_RFS_DIR_ENTRY_EMPTY)
40051d50: 80 a5 c0 11 cmp %l7, %l1
<== NOT EXECUTED
40051d54: 02 80 00 25 be 40051de8 <rtems_rfs_dir_lookup_ino+0x270>
<== NOT EXECUTED
40051d58: 86 12 c0 03 or %o3, %g3, %g3
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, *ino))
40051d5c: 80 a5 e0 0a cmp %l7, 0xa
<== NOT EXECUTED
40051d60: 24 80 00 61 ble,a 40051ee4 <rtems_rfs_dir_lookup_ino+0x36c>
<== NOT EXECUTED
40051d64: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051d68: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
40051d6c: 80 a5 c0 01 cmp %l7, %g1
<== NOT EXECUTED
40051d70: 1a 80 00 5c bcc 40051ee0 <rtems_rfs_dir_lookup_ino+0x368>
<== NOT EXECUTED
40051d74: 80 a2 60 00 cmp %o1, 0
<== NOT EXECUTED
40051d78: 22 80 00 5b be,a 40051ee4 <rtems_rfs_dir_lookup_ino+0x36c>
<== NOT EXECUTED
40051d7c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051d80: c2 06 20 14 ld [ %i0 + 0x14 ], %g1
<== NOT EXECUTED
40051d84: 80 a2 40 01 cmp %o1, %g1
<== NOT EXECUTED
40051d88: 18 80 00 56 bgu 40051ee0 <rtems_rfs_dir_lookup_ino+0x368>
<== NOT EXECUTED
40051d8c: 80 a4 80 03 cmp %l2, %g3
<== NOT EXECUTED
if (ehash == hash)
40051d90: 12 bf ff d2 bne 40051cd8 <rtems_rfs_dir_lookup_ino+0x160>
<== NOT EXECUTED
40051d94: c2 07 bf c4 ld [ %fp + -60 ], %g1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO_CHECK))
40051d98: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
40051d9c: 40 00 18 81 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051da0: 92 10 00 15 mov %l5, %o1
<== NOT EXECUTED
40051da4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051da8: 32 80 00 5f bne,a 40051f24 <rtems_rfs_dir_lookup_ino+0x3ac>
<== NOT EXECUTED
40051dac: c8 0c 00 00 ldub [ %l0 ], %g4
<== NOT EXECUTED
if (memcmp (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length) == 0)
40051db0: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
40051db4: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40051db8: 40 00 3c 5d call 40060f2c <memcmp>
<== NOT EXECUTED
40051dbc: 90 04 20 0a add %l0, 0xa, %o0
<== NOT EXECUTED
40051dc0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051dc4: 02 80 00 91 be 40052008 <rtems_rfs_dir_lookup_ino+0x490>
<== NOT EXECUTED
40051dc8: c2 07 bf c4 ld [ %fp + -60 ], %g1
<== NOT EXECUTED
map.bpos.boff += elength;
40051dcc: 82 05 c0 01 add %l7, %g1, %g1
<== NOT EXECUTED
40051dd0: c2 27 bf c4 st %g1, [ %fp + -60 ]
<== NOT EXECUTED
40051dd4: d0 06 20 08 ld [ %i0 + 8 ], %o0
<== NOT EXECUTED
while (map.bpos.boff < (rtems_rfs_fs_block_size (fs) - RTEMS_RFS_DIR_ENTRY_SIZE))
40051dd8: 86 02 3f f6 add %o0, -10, %g3
<== NOT EXECUTED
40051ddc: 80 a0 40 03 cmp %g1, %g3
<== NOT EXECUTED
40051de0: 0a bf ff c4 bcs 40051cf0 <rtems_rfs_dir_lookup_ino+0x178>
<== NOT EXECUTED
40051de4: a0 04 00 17 add %l0, %l7, %l0
<== NOT EXECUTED
if (rc == 0)
40051de8: 80 a4 e0 00 cmp %l3, 0
<== NOT EXECUTED
40051dec: 12 80 00 32 bne 40051eb4 <rtems_rfs_dir_lookup_ino+0x33c>
<== NOT EXECUTED
40051df0: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
rc = rtems_rfs_block_map_next_block (fs, &map, &block);
40051df4: 94 07 bf a0 add %fp, -96, %o2
<== NOT EXECUTED
40051df8: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40051dfc: 7f ff fa 92 call 40050844 <rtems_rfs_block_map_next_block>
<== NOT EXECUTED
40051e00: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if ((rc > 0) && (rc != ENXIO))
40051e04: a6 92 20 00 orcc %o0, 0, %l3
<== NOT EXECUTED
40051e08: 04 80 00 09 ble 40051e2c <rtems_rfs_dir_lookup_ino+0x2b4>
<== NOT EXECUTED
40051e0c: 80 a4 e0 06 cmp %l3, 6
<== NOT EXECUTED
40051e10: 02 80 00 08 be 40051e30 <rtems_rfs_dir_lookup_ino+0x2b8>
<== NOT EXECUTED
40051e14: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40051e18: 40 00 18 62 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051e1c: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
40051e20: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051e24: 32 80 00 5e bne,a 40051f9c <rtems_rfs_dir_lookup_ino+0x424>
<== NOT EXECUTED
40051e28: e0 06 60 08 ld [ %i1 + 8 ], %l0
<== NOT EXECUTED
if (rc == ENXIO)
40051e2c: 80 a4 e0 06 cmp %l3, 6
<== NOT EXECUTED
40051e30: 12 bf ff 90 bne 40051c70 <rtems_rfs_dir_lookup_ino+0xf8>
<== NOT EXECUTED
40051e34: 80 a4 e0 00 cmp %l3, 0
<== NOT EXECUTED
rc = ENOENT;
40051e38: 10 80 00 1e b 40051eb0 <rtems_rfs_dir_lookup_ino+0x338>
<== NOT EXECUTED
40051e3c: a6 10 20 02 mov 2, %l3
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: lookup ino: root=%" PRId32 ", path=",
40051e40: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051e44: 7f ff a7 c1 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051e48: 90 12 23 70 or %o0, 0x370, %o0 ! 40086770 <MSDOS_DOT_NAME+0x648>
<== NOT EXECUTED
for (c = 0; c < length; c++)
40051e4c: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
40051e50: 04 80 00 0a ble 40051e78 <rtems_rfs_dir_lookup_ino+0x300>
<== NOT EXECUTED
40051e54: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
40051e58: a0 10 00 1a mov %i2, %l0
<== NOT EXECUTED
40051e5c: a2 06 c0 1a add %i3, %i2, %l1
<== NOT EXECUTED
printf ("%c", name[c]);
40051e60: 7f ff a7 cf call 4003bd9c <__wrap_putchar>
<== NOT EXECUTED
40051e64: d0 4c 00 00 ldsb [ %l0 ], %o0
<== NOT EXECUTED
40051e68: a0 04 20 01 inc %l0
<== NOT EXECUTED
for (c = 0; c < length; c++)
40051e6c: 80 a4 40 10 cmp %l1, %l0
<== NOT EXECUTED
40051e70: 12 bf ff fc bne 40051e60 <rtems_rfs_dir_lookup_ino+0x2e8>
<== NOT EXECUTED
40051e74: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
printf (", len=%d\n", length);
40051e78: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051e7c: 7f ff a7 b3 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051e80: 90 12 23 a8 or %o0, 0x3a8, %o0 ! 400867a8 <MSDOS_DOT_NAME+0x680>
<== NOT EXECUTED
*ino = RTEMS_RFS_EMPTY_INO;
40051e84: 10 bf ff 45 b 40051b98 <rtems_rfs_dir_lookup_ino+0x20>
<== NOT EXECUTED
40051e88: c0 27 00 00 clr [ %i4 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40051e8c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051e90: 40 00 18 44 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051e94: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
40051e98: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051e9c: 12 80 00 37 bne 40051f78 <rtems_rfs_dir_lookup_ino+0x400>
<== NOT EXECUTED
40051ea0: 01 00 00 00 nop
<== NOT EXECUTED
if (rc == ENXIO)
40051ea4: 80 a4 e0 06 cmp %l3, 6
<== NOT EXECUTED
40051ea8: 22 80 00 02 be,a 40051eb0 <rtems_rfs_dir_lookup_ino+0x338>
<== NOT EXECUTED
40051eac: a6 10 20 02 mov 2, %l3
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40051eb0: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40051eb4: 7f ff fd fc call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40051eb8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40051ebc: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
40051ec0: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
40051ec4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
40051ec8: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
}
40051ecc: b0 10 00 13 mov %l3, %i0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40051ed0: 7f ff f9 73 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40051ed4: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
}
40051ed8: 81 c7 e0 08 ret
<== NOT EXECUTED
40051edc: 81 e8 00 00 restore
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40051ee0: 90 10 20 00 clr %o0
<== NOT EXECUTED
40051ee4: 40 00 18 2f call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051ee8: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
40051eec: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051ef0: 12 80 00 04 bne 40051f00 <rtems_rfs_dir_lookup_ino+0x388>
<== NOT EXECUTED
40051ef4: d8 07 bf c4 ld [ %fp + -60 ], %o4
<== NOT EXECUTED
rc = EIO;
40051ef8: 10 bf ff ee b 40051eb0 <rtems_rfs_dir_lookup_ino+0x338>
<== NOT EXECUTED
40051efc: a6 10 20 05 mov 5, %l3
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40051f00: d6 07 00 00 ld [ %i4 ], %o3
<== NOT EXECUTED
40051f04: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
40051f08: 94 10 00 17 mov %l7, %o2
<== NOT EXECUTED
rc = EIO;
40051f0c: a6 10 20 05 mov 5, %l3
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40051f10: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40051f14: 7f ff a7 8d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051f18: 90 12 20 b8 or %o0, 0xb8, %o0 ! 400868b8 <MSDOS_DOT_NAME+0x790>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40051f1c: 10 bf ff e6 b 40051eb4 <rtems_rfs_dir_lookup_ino+0x33c>
<== NOT EXECUTED
40051f20: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40051f24: c6 0c 20 01 ldub [ %l0 + 1 ], %g3
<== NOT EXECUTED
40051f28: c2 0c 20 02 ldub [ %l0 + 2 ], %g1
<== NOT EXECUTED
40051f2c: da 0c 20 03 ldub [ %l0 + 3 ], %o5
<== NOT EXECUTED
40051f30: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
40051f34: d4 1f bf c0 ldd [ %fp + -64 ], %o2
<== NOT EXECUTED
40051f38: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
40051f3c: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40051f40: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40051f44: 86 10 c0 04 or %g3, %g4, %g3
<== NOT EXECUTED
40051f48: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
40051f4c: 98 10 00 17 mov %l7, %o4
<== NOT EXECUTED
40051f50: 90 10 00 16 mov %l6, %o0
<== NOT EXECUTED
40051f54: 7f ff a7 7d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051f58: 9a 13 40 01 or %o5, %g1, %o5
<== NOT EXECUTED
if (memcmp (entry + RTEMS_RFS_DIR_ENTRY_SIZE, name, length) == 0)
40051f5c: 10 bf ff 96 b 40051db4 <rtems_rfs_dir_lookup_ino+0x23c>
<== NOT EXECUTED
40051f60: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: block read, ino=%" PRIu32 " bno=%" PRId32 "\n",
40051f64: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
40051f68: 7f ff a7 78 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051f6c: d0 07 bf 9c ld [ %fp + -100 ], %o0
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &entries, block, true);
40051f70: 10 bf ff 4b b 40051c9c <rtems_rfs_dir_lookup_ino+0x124>
<== NOT EXECUTED
40051f74: d4 07 bf a0 ld [ %fp + -96 ], %o2
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: block map find failed: %d: %s\n",
40051f78: 40 00 49 8a call 400645a0 <strerror>
<== NOT EXECUTED
40051f7c: 90 10 00 13 mov %l3, %o0
<== NOT EXECUTED
40051f80: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
40051f84: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40051f88: 11 10 02 19 sethi %hi(0x40086400), %o0
<== NOT EXECUTED
40051f8c: 7f ff a7 6f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051f90: 90 12 23 f8 or %o0, 0x3f8, %o0 ! 400867f8 <MSDOS_DOT_NAME+0x6d0>
<== NOT EXECUTED
if (rc == ENXIO)
40051f94: 10 bf ff c5 b 40051ea8 <rtems_rfs_dir_lookup_ino+0x330>
<== NOT EXECUTED
40051f98: 80 a4 e0 06 cmp %l3, 6
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40051f9c: 40 00 49 81 call 400645a0 <strerror>
<== NOT EXECUTED
40051fa0: 90 10 00 13 mov %l3, %o0
<== NOT EXECUTED
40051fa4: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40051fa8: d0 07 bf 98 ld [ %fp + -104 ], %o0
<== NOT EXECUTED
40051fac: 94 10 00 13 mov %l3, %o2
<== NOT EXECUTED
40051fb0: 7f ff a7 66 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051fb4: 92 10 00 10 mov %l0, %o1
<== NOT EXECUTED
if (rc == ENXIO)
40051fb8: 10 bf ff 9e b 40051e30 <rtems_rfs_dir_lookup_ino+0x2b8>
<== NOT EXECUTED
40051fbc: 80 a4 e0 06 cmp %l3, 6
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40051fc0: 40 00 17 f8 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40051fc4: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
40051fc8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40051fcc: 22 bf ff ba be,a 40051eb4 <rtems_rfs_dir_lookup_ino+0x33c>
<== NOT EXECUTED
40051fd0: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: block read, ino=%" PRIu32 " block=%" PRId32 ": %d: %s\n",
40051fd4: fa 06 60 08 ld [ %i1 + 8 ], %i5
<== NOT EXECUTED
40051fd8: f8 07 bf a0 ld [ %fp + -96 ], %i4
<== NOT EXECUTED
40051fdc: 40 00 49 71 call 400645a0 <strerror>
<== NOT EXECUTED
40051fe0: 90 10 00 13 mov %l3, %o0
<== NOT EXECUTED
40051fe4: 96 10 00 13 mov %l3, %o3
<== NOT EXECUTED
40051fe8: 98 10 00 08 mov %o0, %o4
<== NOT EXECUTED
40051fec: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
40051ff0: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40051ff4: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40051ff8: 7f ff a7 54 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40051ffc: 90 12 20 70 or %o0, 0x70, %o0 ! 40086870 <MSDOS_DOT_NAME+0x748>
<== NOT EXECUTED
40052000: 10 bf ff ad b 40051eb4 <rtems_rfs_dir_lookup_ino+0x33c>
<== NOT EXECUTED
40052004: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
*offset = rtems_rfs_block_map_pos (fs, &map);
40052008: 92 07 bf c0 add %fp, -64, %o1
<== NOT EXECUTED
4005200c: 7f ff f8 ab call 400502b8 <rtems_rfs_block_get_pos>
<== NOT EXECUTED
40052010: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40052014: d2 27 40 00 st %o1, [ %i5 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO_FOUND))
40052018: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005201c: 40 00 17 e1 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052020: 13 04 00 00 sethi %hi(0x10000000), %o1
<== NOT EXECUTED
40052024: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052028: 02 80 00 09 be 4005204c <rtems_rfs_dir_lookup_ino+0x4d4>
<== NOT EXECUTED
4005202c: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: "
40052030: d6 07 40 00 ld [ %i5 ], %o3
<== NOT EXECUTED
40052034: d4 07 00 00 ld [ %i4 ], %o2
<== NOT EXECUTED
40052038: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
4005203c: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
40052040: 7f ff a7 42 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052044: 90 12 21 68 or %o0, 0x168, %o0 ! 40086968 <MSDOS_DOT_NAME+0x840>
<== NOT EXECUTED
40052048: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
4005204c: 7f ff fd 96 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40052050: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052054: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
40052058: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
4005205c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
40052060: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
return 0;
40052064: a6 10 20 00 clr %l3
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052068: 7f ff f9 0d call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
4005206c: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
return 0;
40052070: 30 bf fe d8 b,a 40051bd0 <rtems_rfs_dir_lookup_ino+0x58>
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_LOOKUP_INO))
40052074: 40 00 17 cb call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052078: 13 01 00 00 sethi %hi(0x4000000), %o1
<== NOT EXECUTED
4005207c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052080: 22 bf ff 8c be,a 40051eb0 <rtems_rfs_dir_lookup_ino+0x338>
<== NOT EXECUTED
40052084: a6 10 20 05 mov 5, %l3
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: block is 0 in ino %" PRIu32 ": %d: %s\n",
40052088: fa 06 60 08 ld [ %i1 + 8 ], %i5
<== NOT EXECUTED
4005208c: 40 00 49 45 call 400645a0 <strerror>
<== NOT EXECUTED
40052090: 90 10 20 05 mov 5, %o0
<== NOT EXECUTED
40052094: 94 10 20 05 mov 5, %o2
<== NOT EXECUTED
40052098: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
4005209c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
rc = EIO;
400520a0: a6 10 20 05 mov 5, %l3
<== NOT EXECUTED
printf ("rtems-rfs: dir-lookup-ino: block is 0 in ino %" PRIu32 ": %d: %s\n",
400520a4: 11 10 02 1a sethi %hi(0x40086800), %o0
<== NOT EXECUTED
400520a8: 7f ff a7 28 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400520ac: 90 12 22 00 or %o0, 0x200, %o0 ! 40086a00 <MSDOS_DOT_NAME+0x8d8>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400520b0: 10 bf ff 81 b 40051eb4 <rtems_rfs_dir_lookup_ino+0x33c>
<== NOT EXECUTED
400520b4: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052918 <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)
{
40052918: 9d e3 bf 40 save %sp, -192, %sp
<== NOT EXECUTED
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))
4005291c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052920: 13 20 00 00 sethi %hi(0x80000000), %o1
<== NOT EXECUTED
40052924: 40 00 15 9f call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052928: a4 10 00 1a mov %i2, %l2
<== NOT EXECUTED
4005292c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052930: 12 80 00 29 bne 400529d4 <rtems_rfs_dir_read+0xbc>
<== NOT EXECUTED
40052934: a6 10 00 1b mov %i3, %l3
<== NOT EXECUTED
printf ("rtems-rfs: dir-read: dir=%" PRId32 " offset=%" PRId64 "\n",
rtems_rfs_inode_ino (dir), offset);
*length = 0;
40052938: c0 27 40 00 clr [ %i5 ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, dir, &map);
4005293c: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40052940: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40052944: 7f ff f6 77 call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
40052948: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005294c: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
40052950: 24 80 00 04 ble,a 40052960 <rtems_rfs_dir_read+0x48>
<== NOT EXECUTED
40052954: e0 06 20 08 ld [ %i0 + 8 ], %l0
<== NOT EXECUTED
}
rtems_rfs_buffer_handle_close (fs, &buffer);
rtems_rfs_block_map_close (fs, &map);
return rc;
}
40052958: 81 c7 e0 08 ret
<== NOT EXECUTED
4005295c: 91 e8 00 1b restore %g0, %i3, %o0
<== NOT EXECUTED
if (((rtems_rfs_fs_block_size (fs) -
40052960: b4 10 20 00 clr %i2
<== NOT EXECUTED
(offset % rtems_rfs_fs_block_size (fs))) <= RTEMS_RFS_DIR_ENTRY_SIZE))
40052964: 90 10 00 12 mov %l2, %o0
<== NOT EXECUTED
40052968: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
4005296c: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40052970: 40 00 9d 00 call 40079d70 <__moddi3>
<== NOT EXECUTED
40052974: 96 10 00 10 mov %l0, %o3
<== NOT EXECUTED
if (((rtems_rfs_fs_block_size (fs) -
40052978: 86 a4 00 09 subcc %l0, %o1, %g3
<== NOT EXECUTED
4005297c: 84 66 80 08 subx %i2, %o0, %g2
<== NOT EXECUTED
40052980: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40052984: 04 80 00 1c ble 400529f4 <rtems_rfs_dir_read+0xdc>
<== NOT EXECUTED
40052988: b6 10 00 10 mov %l0, %i3
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, offset, &block);
4005298c: 94 10 00 12 mov %l2, %o2
<== NOT EXECUTED
40052990: 96 10 00 13 mov %l3, %o3
<== NOT EXECUTED
40052994: 98 07 bf a0 add %fp, -96, %o4
<== NOT EXECUTED
40052998: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
4005299c: 7f ff f7 8c call 400507cc <rtems_rfs_block_map_seek>
<== NOT EXECUTED
400529a0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
400529a4: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
400529a8: 24 80 00 2d ble,a 40052a5c <rtems_rfs_dir_read+0x144>
<== NOT EXECUTED
400529ac: 35 00 00 3f sethi %hi(0xfc00), %i2
<== NOT EXECUTED
if (rc == ENXIO)
400529b0: 80 a6 e0 06 cmp %i3, 6
<== NOT EXECUTED
400529b4: 22 80 00 02 be,a 400529bc <rtems_rfs_dir_read+0xa4>
<== NOT EXECUTED
400529b8: b6 10 20 02 mov 2, %i3
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
400529bc: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
400529c0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400529c4: 7f ff f6 b6 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400529c8: b0 10 00 1b mov %i3, %i0
<== NOT EXECUTED
}
400529cc: 81 c7 e0 08 ret
<== NOT EXECUTED
400529d0: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: dir-read: dir=%" PRId32 " offset=%" PRId64 "\n",
400529d4: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
400529d8: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
400529dc: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
400529e0: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
400529e4: 7f ff a4 d9 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400529e8: 90 12 21 20 or %o0, 0x120, %o0 ! 40086d20 <MSDOS_DOT_NAME+0xbf8>
<== NOT EXECUTED
*length = 0;
400529ec: 10 bf ff d4 b 4005293c <rtems_rfs_dir_read+0x24>
<== NOT EXECUTED
400529f0: c0 27 40 00 clr [ %i5 ]
<== NOT EXECUTED
if (((rtems_rfs_fs_block_size (fs) -
400529f4: 12 80 00 06 bne 40052a0c <rtems_rfs_dir_read+0xf4>
<== NOT EXECUTED
400529f8: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
400529fc: 80 a0 e0 0a cmp %g3, 0xa
<== NOT EXECUTED
40052a00: 38 bf ff e4 bgu,a 40052990 <rtems_rfs_dir_read+0x78>
<== NOT EXECUTED
40052a04: 94 10 00 12 mov %l2, %o2
<== NOT EXECUTED
offset = (((offset / rtems_rfs_fs_block_size (fs)) + 1) *
40052a08: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
40052a0c: 90 10 00 12 mov %l2, %o0
<== NOT EXECUTED
40052a10: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
40052a14: 40 00 9c 4c call 40079b44 <__divdi3>
<== NOT EXECUTED
40052a18: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40052a1c: 86 82 60 01 addcc %o1, 1, %g3
<== NOT EXECUTED
40052a20: 84 42 20 00 addx %o0, 0, %g2
<== NOT EXECUTED
40052a24: 82 58 80 10 smul %g2, %l0, %g1
<== NOT EXECUTED
40052a28: a6 54 00 03 umul %l0, %g3, %l3
<== NOT EXECUTED
40052a2c: a5 40 00 00 rd %y, %l2
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, offset, &block);
40052a30: 98 07 bf a0 add %fp, -96, %o4
<== NOT EXECUTED
offset = (((offset / rtems_rfs_fs_block_size (fs)) + 1) *
40052a34: a4 00 40 12 add %g1, %l2, %l2
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, offset, &block);
40052a38: 96 10 00 13 mov %l3, %o3
<== NOT EXECUTED
40052a3c: 94 10 00 12 mov %l2, %o2
<== NOT EXECUTED
40052a40: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052a44: 7f ff f7 62 call 400507cc <rtems_rfs_block_map_seek>
<== NOT EXECUTED
40052a48: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052a4c: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
40052a50: 14 bf ff d9 bg 400529b4 <rtems_rfs_dir_read+0x9c>
<== NOT EXECUTED
40052a54: 80 a6 e0 06 cmp %i3, 6
<== NOT EXECUTED
if (elength != RTEMS_RFS_DIR_ENTRY_EMPTY)
40052a58: 35 00 00 3f sethi %hi(0xfc00), %i2
<== NOT EXECUTED
printf ("rtems-rfs: dir-read: next block: off:%" PRId64 " length:%zd\n",
40052a5c: 2d 10 02 1b sethi %hi(0x40086c00), %l6
<== NOT EXECUTED
handle->dirty = false;
40052a60: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
if (elength != RTEMS_RFS_DIR_ENTRY_EMPTY)
40052a64: b4 16 a3 ff or %i2, 0x3ff, %i2
<== NOT EXECUTED
handle->bnum = 0;
40052a68: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))
40052a6c: a8 10 20 00 clr %l4
<== NOT EXECUTED
handle->buffer = NULL;
40052a70: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
40052a74: 2b 20 00 00 sethi %hi(0x80000000), %l5
<== NOT EXECUTED
printf ("rtems-rfs: dir-read: next block: off:%" PRId64 " length:%zd\n",
40052a78: 10 80 00 0b b 40052aa4 <rtems_rfs_dir_read+0x18c>
<== NOT EXECUTED
40052a7c: ac 15 a1 d0 or %l6, 0x1d0, %l6
<== NOT EXECUTED
rc = rtems_rfs_block_map_next_block (fs, &map, &block);
40052a80: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40052a84: 7f ff f7 70 call 40050844 <rtems_rfs_block_map_next_block>
<== NOT EXECUTED
40052a88: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc == ENXIO)
40052a8c: 80 a2 20 06 cmp %o0, 6
<== NOT EXECUTED
40052a90: 02 80 00 90 be 40052cd0 <rtems_rfs_dir_read+0x3b8>
<== NOT EXECUTED
40052a94: b6 10 00 08 mov %o0, %i3
<== NOT EXECUTED
while (rc == 0)
40052a98: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052a9c: 12 80 00 60 bne 40052c1c <rtems_rfs_dir_read+0x304>
<== NOT EXECUTED
40052aa0: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, true);
40052aa4: d4 07 bf a0 ld [ %fp + -96 ], %o2
<== NOT EXECUTED
40052aa8: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40052aac: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052ab0: 7f ff fa 36 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40052ab4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40052ab8: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
40052abc: 14 80 00 57 bg 40052c18 <rtems_rfs_dir_read+0x300>
<== NOT EXECUTED
40052ac0: c2 07 bf ac ld [ %fp + -84 ], %g1
<== NOT EXECUTED
entry = rtems_rfs_buffer_data (&buffer);
40052ac4: e0 00 60 1c ld [ %g1 + 0x1c ], %l0
<== NOT EXECUTED
entry += map.bpos.boff;
40052ac8: c6 07 bf c4 ld [ %fp + -60 ], %g3
<== NOT EXECUTED
40052acc: a0 04 00 03 add %l0, %g3, %l0
<== NOT EXECUTED
40052ad0: c2 0c 20 08 ldub [ %l0 + 8 ], %g1
<== NOT EXECUTED
40052ad4: e2 0c 20 09 ldub [ %l0 + 9 ], %l1
<== NOT EXECUTED
40052ad8: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
elength = rtems_rfs_dir_entry_length (entry);
40052adc: a2 14 40 01 or %l1, %g1, %l1
<== NOT EXECUTED
if (elength != RTEMS_RFS_DIR_ENTRY_EMPTY)
40052ae0: 80 a4 40 1a cmp %l1, %i2
<== NOT EXECUTED
40052ae4: 12 80 00 59 bne 40052c48 <rtems_rfs_dir_read+0x330>
<== NOT EXECUTED
40052ae8: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
*length += rtems_rfs_fs_block_size (fs) - map.bpos.boff;
40052aec: c4 06 20 08 ld [ %i0 + 8 ], %g2
<== NOT EXECUTED
40052af0: c2 07 40 00 ld [ %i5 ], %g1
<== NOT EXECUTED
40052af4: 84 20 80 03 sub %g2, %g3, %g2
<== NOT EXECUTED
40052af8: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
40052afc: c2 27 40 00 st %g1, [ %i5 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))
40052b00: 40 00 15 28 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052b04: 92 10 00 15 mov %l5, %o1
<== NOT EXECUTED
40052b08: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052b0c: 22 bf ff dd be,a 40052a80 <rtems_rfs_dir_read+0x168>
<== NOT EXECUTED
40052b10: 94 07 bf a0 add %fp, -96, %o2
<== NOT EXECUTED
printf ("rtems-rfs: dir-read: next block: off:%" PRId64 " length:%zd\n",
40052b14: d6 07 40 00 ld [ %i5 ], %o3
<== NOT EXECUTED
40052b18: 92 10 00 12 mov %l2, %o1
<== NOT EXECUTED
40052b1c: 94 10 00 13 mov %l3, %o2
<== NOT EXECUTED
40052b20: 7f ff a4 8a call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052b24: 90 10 00 16 mov %l6, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_next_block (fs, &map, &block);
40052b28: 10 bf ff d6 b 40052a80 <rtems_rfs_dir_read+0x168>
<== NOT EXECUTED
40052b2c: 94 07 bf a0 add %fp, -96, %o2
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, eino))
40052b30: 80 a0 40 1a cmp %g1, %i2
<== NOT EXECUTED
40052b34: 0a 80 00 58 bcs 40052c94 <rtems_rfs_dir_read+0x37c>
<== NOT EXECUTED
40052b38: 90 10 20 00 clr %o0
<== NOT EXECUTED
memset (dirent, 0, sizeof (struct dirent));
40052b3c: 94 10 21 18 mov 0x118, %o2
<== NOT EXECUTED
40052b40: 92 10 20 00 clr %o1
<== NOT EXECUTED
40052b44: 40 00 39 ad call 400611f8 <memset>
<== NOT EXECUTED
40052b48: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
dirent->d_off = rtems_rfs_block_get_pos (fs, &map.bpos);
40052b4c: 92 07 bf c0 add %fp, -64, %o1
<== NOT EXECUTED
40052b50: 7f ff f5 da call 400502b8 <rtems_rfs_block_get_pos>
<== NOT EXECUTED
40052b54: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
*length += elength;
40052b58: c2 07 40 00 ld [ %i5 ], %g1
<== NOT EXECUTED
dirent->d_reclen = sizeof (struct dirent);
40052b5c: 84 10 21 18 mov 0x118, %g2
<== NOT EXECUTED
dirent->d_off = rtems_rfs_block_get_pos (fs, &map.bpos);
40052b60: d0 3f 20 08 std %o0, [ %i4 + 8 ]
<== NOT EXECUTED
*length += elength;
40052b64: 82 04 40 01 add %l1, %g1, %g1
<== NOT EXECUTED
dirent->d_reclen = sizeof (struct dirent);
40052b68: c4 37 20 10 sth %g2, [ %i4 + 0x10 ]
<== NOT EXECUTED
*length += elength;
40052b6c: c2 27 40 00 st %g1, [ %i5 ]
<== NOT EXECUTED
remaining = rtems_rfs_fs_block_size (fs) - (map.bpos.boff + elength);
40052b70: c6 07 bf c4 ld [ %fp + -60 ], %g3
<== NOT EXECUTED
40052b74: c4 06 20 08 ld [ %i0 + 8 ], %g2
<== NOT EXECUTED
40052b78: 84 20 80 03 sub %g2, %g3, %g2
<== NOT EXECUTED
40052b7c: 84 20 80 11 sub %g2, %l1, %g2
<== NOT EXECUTED
if (remaining <= RTEMS_RFS_DIR_ENTRY_SIZE)
40052b80: 80 a0 a0 0a cmp %g2, 0xa
<== NOT EXECUTED
40052b84: 14 80 00 04 bg 40052b94 <rtems_rfs_dir_read+0x27c>
<== NOT EXECUTED
40052b88: a2 04 7f f6 add %l1, -10, %l1
<== NOT EXECUTED
*length += remaining;
40052b8c: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
40052b90: c2 27 40 00 st %g1, [ %i5 ]
<== NOT EXECUTED
40052b94: 80 a4 60 ff cmp %l1, 0xff
<== NOT EXECUTED
40052b98: 34 80 00 02 bg,a 40052ba0 <rtems_rfs_dir_read+0x288>
<== NOT EXECUTED
40052b9c: a2 10 20 ff mov 0xff, %l1
<== NOT EXECUTED
memcpy (dirent->d_name, entry + RTEMS_RFS_DIR_ENTRY_SIZE, elength);
40052ba0: 94 10 00 11 mov %l1, %o2
<== NOT EXECUTED
40052ba4: 92 04 20 0a add %l0, 0xa, %o1
<== NOT EXECUTED
40052ba8: ba 07 20 14 add %i4, 0x14, %i5
<== NOT EXECUTED
40052bac: 40 00 39 09 call 40060fd0 <memcpy>
<== NOT EXECUTED
40052bb0: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
dirent->d_ino = rtems_rfs_dir_entry_ino (entry);
40052bb4: c8 0c 00 00 ldub [ %l0 ], %g4
<== NOT EXECUTED
40052bb8: c4 0c 20 01 ldub [ %l0 + 1 ], %g2
<== NOT EXECUTED
40052bbc: c2 0c 20 02 ldub [ %l0 + 2 ], %g1
<== NOT EXECUTED
40052bc0: c6 0c 20 03 ldub [ %l0 + 3 ], %g3
<== NOT EXECUTED
40052bc4: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
40052bc8: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40052bcc: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40052bd0: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
dirent->d_namlen = elength;
40052bd4: e2 37 20 12 sth %l1, [ %i4 + 0x12 ]
<== NOT EXECUTED
dirent->d_ino = rtems_rfs_dir_entry_ino (entry);
40052bd8: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
40052bdc: 82 10 c0 01 or %g3, %g1, %g1
<== NOT EXECUTED
40052be0: c2 27 00 00 st %g1, [ %i4 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))
40052be4: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052be8: 40 00 14 ee call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052bec: 13 20 00 00 sethi %hi(0x80000000), %o1
<== NOT EXECUTED
40052bf0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052bf4: 02 80 00 0a be 40052c1c <rtems_rfs_dir_read+0x304>
<== NOT EXECUTED
40052bf8: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-read: found off:%" PRIooff_t " ino:%ld name=%s\n",
40052bfc: d6 07 00 00 ld [ %i4 ], %o3
<== NOT EXECUTED
40052c00: d2 07 20 08 ld [ %i4 + 8 ], %o1
<== NOT EXECUTED
40052c04: d4 07 20 0c ld [ %i4 + 0xc ], %o2
<== NOT EXECUTED
40052c08: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
40052c0c: 98 10 00 1d mov %i5, %o4
<== NOT EXECUTED
40052c10: 7f ff a4 4e call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052c14: 90 12 21 98 or %o0, 0x198, %o0
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40052c18: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
40052c1c: 7f ff fa a2 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40052c20: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052c24: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
40052c28: c0 2f bf a4 clrb [ %fp + -92 ]
<== NOT EXECUTED
40052c2c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
40052c30: c0 27 bf a8 clr [ %fp + -88 ]
<== NOT EXECUTED
}
40052c34: b0 10 00 1b mov %i3, %i0
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40052c38: 7f ff f6 19 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40052c3c: c0 27 bf ac clr [ %fp + -84 ]
<== NOT EXECUTED
}
40052c40: 81 c7 e0 08 ret
<== NOT EXECUTED
40052c44: 81 e8 00 00 restore
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052c48: c4 0c 00 00 ldub [ %l0 ], %g2
<== NOT EXECUTED
40052c4c: c2 0c 20 01 ldub [ %l0 + 1 ], %g1
<== NOT EXECUTED
40052c50: d6 0c 20 02 ldub [ %l0 + 2 ], %o3
<== NOT EXECUTED
40052c54: c6 0c 20 03 ldub [ %l0 + 3 ], %g3
<== NOT EXECUTED
40052c58: 85 28 a0 18 sll %g2, 0x18, %g2
<== NOT EXECUTED
40052c5c: 83 28 60 10 sll %g1, 0x10, %g1
<== NOT EXECUTED
40052c60: 97 2a e0 08 sll %o3, 8, %o3
<== NOT EXECUTED
40052c64: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, eino))
40052c68: 80 a4 60 0a cmp %l1, 0xa
<== NOT EXECUTED
eino = rtems_rfs_dir_entry_ino (entry);
40052c6c: 96 12 c0 01 or %o3, %g1, %o3
<== NOT EXECUTED
if (rtems_rfs_dir_entry_valid (fs, elength, eino))
40052c70: 04 80 00 08 ble 40052c90 <rtems_rfs_dir_read+0x378>
<== NOT EXECUTED
40052c74: b4 10 c0 0b or %g3, %o3, %i2
<== NOT EXECUTED
40052c78: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
40052c7c: 80 a4 40 01 cmp %l1, %g1
<== NOT EXECUTED
40052c80: 1a 80 00 04 bcc 40052c90 <rtems_rfs_dir_read+0x378>
<== NOT EXECUTED
40052c84: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40052c88: 32 bf ff aa bne,a 40052b30 <rtems_rfs_dir_read+0x218>
<== NOT EXECUTED
40052c8c: c2 06 20 14 ld [ %i0 + 0x14 ], %g1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_DIR_READ))
40052c90: 90 10 20 00 clr %o0
<== NOT EXECUTED
40052c94: 13 20 00 00 sethi %hi(0x80000000), %o1
<== NOT EXECUTED
40052c98: 40 00 14 c2 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052c9c: b6 10 20 05 mov 5, %i3
<== NOT EXECUTED
40052ca0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052ca4: 22 bf ff de be,a 40052c1c <rtems_rfs_dir_read+0x304>
<== NOT EXECUTED
40052ca8: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-read: "
40052cac: d8 07 bf c4 ld [ %fp + -60 ], %o4
<== NOT EXECUTED
40052cb0: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
40052cb4: 96 10 00 1a mov %i2, %o3
<== NOT EXECUTED
40052cb8: 94 10 00 11 mov %l1, %o2
<== NOT EXECUTED
40052cbc: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
40052cc0: 7f ff a4 22 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40052cc4: 90 12 21 50 or %o0, 0x150, %o0 ! 40086d50 <MSDOS_DOT_NAME+0xc28>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40052cc8: 10 bf ff d5 b 40052c1c <rtems_rfs_dir_read+0x304>
<== NOT EXECUTED
40052ccc: 92 07 bf a4 add %fp, -92, %o1
<== NOT EXECUTED
rc = ENOENT;
40052cd0: 10 bf ff d2 b 40052c18 <rtems_rfs_dir_read+0x300>
<== NOT EXECUTED
40052cd4: b6 10 20 02 mov 2, %i3
<== NOT EXECUTED
4005328c <rtems_rfs_file_close>:
{
4005328c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))
40053290: 90 10 20 10 mov 0x10, %o0
<== NOT EXECUTED
40053294: 40 00 13 43 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053298: 92 10 20 00 clr %o1
<== NOT EXECUTED
4005329c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400532a0: 32 80 00 79 bne,a 40053484 <rtems_rfs_file_close+0x1f8>
<== NOT EXECUTED
400532a4: c2 06 60 1c ld [ %i1 + 0x1c ], %g1
<== NOT EXECUTED
if (handle->shared->references > 0)
400532a8: d2 06 60 1c ld [ %i1 + 0x1c ], %o1
<== NOT EXECUTED
400532ac: fa 02 60 08 ld [ %o1 + 8 ], %i5
<== NOT EXECUTED
400532b0: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
400532b4: 04 80 00 05 ble 400532c8 <rtems_rfs_file_close+0x3c>
<== NOT EXECUTED
400532b8: 01 00 00 00 nop
<== NOT EXECUTED
handle->shared->references--;
400532bc: ba 07 7f ff add %i5, -1, %i5
<== NOT EXECUTED
400532c0: fa 22 60 08 st %i5, [ %o1 + 8 ]
<== NOT EXECUTED
if (handle->shared->references == 0)
400532c4: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
400532c8: 02 80 00 0b be 400532f4 <rtems_rfs_file_close+0x68>
<== NOT EXECUTED
400532cc: b8 06 60 04 add %i1, 4, %i4
<== NOT EXECUTED
400532d0: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
400532d4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400532d8: 7f ff f8 f3 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400532dc: ba 10 20 00 clr %i5
<== NOT EXECUTED
free (handle);
400532e0: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
400532e4: 7f fe e0 e7 call 4000b680 <free>
<== NOT EXECUTED
400532e8: b0 10 00 1d mov %i5, %i0
<== NOT EXECUTED
}
400532ec: 81 c7 e0 08 ret
<== NOT EXECUTED
400532f0: 81 e8 00 00 restore
<== NOT EXECUTED
if (!rtems_rfs_inode_is_loaded (&handle->shared->inode))
400532f4: c4 02 60 18 ld [ %o1 + 0x18 ], %g2
<== NOT EXECUTED
400532f8: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
400532fc: 22 80 00 87 be,a 40053518 <rtems_rfs_file_close+0x28c>
<== NOT EXECUTED
40053300: 92 02 60 0c add %o1, 0xc, %o1
<== NOT EXECUTED
rtems_rfs_inode_set_atime (&handle->shared->inode,
40053304: c2 02 60 8c ld [ %o1 + 0x8c ], %g1
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->atime, atime);
40053308: 87 30 60 18 srl %g1, 0x18, %g3
<== NOT EXECUTED
4005330c: c6 28 a0 10 stb %g3, [ %g2 + 0x10 ]
<== NOT EXECUTED
40053310: 87 30 60 10 srl %g1, 0x10, %g3
<== NOT EXECUTED
40053314: c4 02 60 18 ld [ %o1 + 0x18 ], %g2
<== NOT EXECUTED
40053318: c6 28 a0 11 stb %g3, [ %g2 + 0x11 ]
<== NOT EXECUTED
4005331c: 87 30 60 08 srl %g1, 8, %g3
<== NOT EXECUTED
40053320: c4 02 60 18 ld [ %o1 + 0x18 ], %g2
<== NOT EXECUTED
40053324: c6 28 a0 12 stb %g3, [ %g2 + 0x12 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40053328: 88 10 20 01 mov 1, %g4
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->atime, atime);
4005332c: c4 02 60 18 ld [ %o1 + 0x18 ], %g2
<== NOT EXECUTED
40053330: c2 28 a0 13 stb %g1, [ %g2 + 0x13 ]
<== NOT EXECUTED
rtems_rfs_inode_set_mtime (&handle->shared->inode,
40053334: c4 06 60 1c ld [ %i1 + 0x1c ], %g2
<== NOT EXECUTED
40053338: c2 00 a0 90 ld [ %g2 + 0x90 ], %g1
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->mtime, mtime);
4005333c: c6 00 a0 18 ld [ %g2 + 0x18 ], %g3
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40053340: c8 2a 60 1c stb %g4, [ %o1 + 0x1c ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->mtime, mtime);
40053344: b7 30 60 18 srl %g1, 0x18, %i3
<== NOT EXECUTED
40053348: f6 28 e0 14 stb %i3, [ %g3 + 0x14 ]
<== NOT EXECUTED
4005334c: b7 30 60 10 srl %g1, 0x10, %i3
<== NOT EXECUTED
40053350: c6 00 a0 18 ld [ %g2 + 0x18 ], %g3
<== NOT EXECUTED
40053354: f6 28 e0 15 stb %i3, [ %g3 + 0x15 ]
<== NOT EXECUTED
40053358: b7 30 60 08 srl %g1, 8, %i3
<== NOT EXECUTED
4005335c: c6 00 a0 18 ld [ %g2 + 0x18 ], %g3
<== NOT EXECUTED
40053360: f6 28 e0 16 stb %i3, [ %g3 + 0x16 ]
<== NOT EXECUTED
40053364: c6 00 a0 18 ld [ %g2 + 0x18 ], %g3
<== NOT EXECUTED
40053368: c2 28 e0 17 stb %g1, [ %g3 + 0x17 ]
<== NOT EXECUTED
rtems_rfs_inode_set_ctime (&handle->shared->inode,
4005336c: c2 06 60 1c ld [ %i1 + 0x1c ], %g1
<== NOT EXECUTED
40053370: c6 00 60 94 ld [ %g1 + 0x94 ], %g3
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40053374: c8 28 a0 1c stb %g4, [ %g2 + 0x1c ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->ctime, ctime);
40053378: b7 30 e0 18 srl %g3, 0x18, %i3
<== NOT EXECUTED
4005337c: c4 00 60 18 ld [ %g1 + 0x18 ], %g2
<== NOT EXECUTED
40053380: f6 28 a0 18 stb %i3, [ %g2 + 0x18 ]
<== NOT EXECUTED
40053384: b7 30 e0 10 srl %g3, 0x10, %i3
<== NOT EXECUTED
40053388: c4 00 60 18 ld [ %g1 + 0x18 ], %g2
<== NOT EXECUTED
4005338c: f6 28 a0 19 stb %i3, [ %g2 + 0x19 ]
<== NOT EXECUTED
40053390: b7 30 e0 08 srl %g3, 8, %i3
<== NOT EXECUTED
40053394: c4 00 60 18 ld [ %g1 + 0x18 ], %g2
<== NOT EXECUTED
40053398: f6 28 a0 1a stb %i3, [ %g2 + 0x1a ]
<== NOT EXECUTED
4005339c: c4 00 60 18 ld [ %g1 + 0x18 ], %g2
<== NOT EXECUTED
400533a0: c6 28 a0 1b stb %g3, [ %g2 + 0x1b ]
<== NOT EXECUTED
if (!rtems_rfs_block_size_equal (&handle->shared->size,
400533a4: d2 06 60 1c ld [ %i1 + 0x1c ], %o1
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
400533a8: c8 28 60 1c stb %g4, [ %g1 + 0x1c ]
<== NOT EXECUTED
400533ac: c2 02 60 84 ld [ %o1 + 0x84 ], %g1
<== NOT EXECUTED
400533b0: c4 02 60 3c ld [ %o1 + 0x3c ], %g2
<== NOT EXECUTED
400533b4: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
400533b8: 02 80 00 75 be 4005358c <rtems_rfs_file_close+0x300>
<== NOT EXECUTED
400533bc: c4 02 60 88 ld [ %o1 + 0x88 ], %g2
<== NOT EXECUTED
*/
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);
400533c0: c2 22 60 3c st %g1, [ %o1 + 0x3c ]
<== NOT EXECUTED
map->dirty = true;
400533c4: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
rtems_rfs_block_copy_size (&map->size, size);
400533c8: c4 22 60 40 st %g2, [ %o1 + 0x40 ]
<== NOT EXECUTED
map->dirty = true;
400533cc: c2 2a 60 34 stb %g1, [ %o1 + 0x34 ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_close (fs, &handle->shared->map);
400533d0: 92 02 60 34 add %o1, 0x34, %o1
<== NOT EXECUTED
400533d4: 7f ff f4 32 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400533d8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
400533dc: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
400533e0: 14 80 00 44 bg 400534f0 <rtems_rfs_file_close+0x264>
<== NOT EXECUTED
400533e4: 90 10 20 10 mov 0x10, %o0
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &handle->shared->inode);
400533e8: d2 06 60 1c ld [ %i1 + 0x1c ], %o1
<== NOT EXECUTED
400533ec: 92 02 60 0c add %o1, 0xc, %o1
<== NOT EXECUTED
400533f0: 40 00 0b e3 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400533f4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
400533f8: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
400533fc: 34 80 00 28 bg,a 4005349c <rtems_rfs_file_close+0x210>
<== NOT EXECUTED
40053400: 90 10 20 10 mov 0x10, %o0
<== NOT EXECUTED
40053404: d0 06 60 1c ld [ %i1 + 0x1c ], %o0
<== NOT EXECUTED
40053408: c4 02 00 00 ld [ %o0 ], %g2
<== NOT EXECUTED
4005340c: c2 02 20 04 ld [ %o0 + 4 ], %g1
<== NOT EXECUTED
next->previous = previous;
40053410: c2 20 a0 04 st %g1, [ %g2 + 4 ]
<== NOT EXECUTED
free (handle->shared);
40053414: 7f fe e0 9b call 4000b680 <free>
<== NOT EXECUTED
40053418: c4 20 40 00 st %g2, [ %g1 ]
<== NOT EXECUTED
4005341c: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
40053420: 7f ff f8 a1 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40053424: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->dirty = false;
40053428: c0 2e 60 04 clrb [ %i1 + 4 ]
<== NOT EXECUTED
if (rrc > 0)
4005342c: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
handle->bnum = 0;
40053430: c0 26 60 08 clr [ %i1 + 8 ]
<== NOT EXECUTED
40053434: 04 bf ff ab ble 400532e0 <rtems_rfs_file_close+0x54>
<== NOT EXECUTED
40053438: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))
4005343c: 90 10 20 10 mov 0x10, %o0
<== NOT EXECUTED
40053440: 40 00 12 d8 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053444: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053448: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005344c: 22 bf ff a6 be,a 400532e4 <rtems_rfs_file_close+0x58>
<== NOT EXECUTED
40053450: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
printf ("rtems-rfs: file-close: result: %d: %s\n", rrc, strerror (rrc));
40053454: 40 00 44 53 call 400645a0 <strerror>
<== NOT EXECUTED
40053458: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
4005345c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40053460: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40053464: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40053468: 7f ff a2 38 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005346c: 90 12 20 00 mov %o0, %o0 ! 40087000 <MSDOS_DOT_NAME+0xed8>
<== NOT EXECUTED
free (handle);
40053470: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
40053474: 7f fe e0 83 call 4000b680 <free>
<== NOT EXECUTED
40053478: b0 10 00 1d mov %i5, %i0
<== NOT EXECUTED
}
4005347c: 81 c7 e0 08 ret
<== NOT EXECUTED
40053480: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: file-close: entry: ino=%" PRId32 "\n",
40053484: d2 00 60 14 ld [ %g1 + 0x14 ], %o1
<== NOT EXECUTED
40053488: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
4005348c: 7f ff a2 2f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053490: 90 12 23 58 or %o0, 0x358, %o0 ! 40086f58 <MSDOS_DOT_NAME+0xe30>
<== NOT EXECUTED
if (handle->shared->references > 0)
40053494: 10 bf ff 86 b 400532ac <rtems_rfs_file_close+0x20>
<== NOT EXECUTED
40053498: d2 06 60 1c ld [ %i1 + 0x1c ], %o1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))
4005349c: 40 00 12 c1 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400534a0: 92 10 20 00 clr %o1
<== NOT EXECUTED
400534a4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400534a8: 32 80 00 23 bne,a 40053534 <rtems_rfs_file_close+0x2a8>
<== NOT EXECUTED
400534ac: c2 06 60 1c ld [ %i1 + 0x1c ], %g1
<== NOT EXECUTED
400534b0: d0 06 60 1c ld [ %i1 + 0x1c ], %o0
<== NOT EXECUTED
400534b4: c4 02 00 00 ld [ %o0 ], %g2
<== NOT EXECUTED
if (rrc == 0)
400534b8: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
400534bc: 12 bf ff d5 bne 40053410 <rtems_rfs_file_close+0x184>
<== NOT EXECUTED
400534c0: c2 02 20 04 ld [ %o0 + 4 ], %g1
<== NOT EXECUTED
400534c4: c2 20 a0 04 st %g1, [ %g2 + 4 ]
<== NOT EXECUTED
handle->buffer = NULL;
400534c8: ba 10 00 1b mov %i3, %i5
<== NOT EXECUTED
free (handle->shared);
400534cc: 7f fe e0 6d call 4000b680 <free>
<== NOT EXECUTED
400534d0: c4 20 40 00 st %g2, [ %g1 ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400534d4: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
400534d8: 7f ff f8 73 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400534dc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->dirty = false;
400534e0: c0 2e 60 04 clrb [ %i1 + 4 ]
<== NOT EXECUTED
handle->bnum = 0;
400534e4: c0 26 60 08 clr [ %i1 + 8 ]
<== NOT EXECUTED
handle->buffer = NULL;
400534e8: 10 bf ff d5 b 4005343c <rtems_rfs_file_close+0x1b0>
<== NOT EXECUTED
400534ec: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_CLOSE))
400534f0: 40 00 12 ac call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400534f4: 92 10 20 00 clr %o1
<== NOT EXECUTED
400534f8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400534fc: 32 80 00 19 bne,a 40053560 <rtems_rfs_file_close+0x2d4>
<== NOT EXECUTED
40053500: c2 06 60 1c ld [ %i1 + 0x1c ], %g1
<== NOT EXECUTED
if (rrc == 0)
40053504: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
40053508: 22 bf ff b8 be,a 400533e8 <rtems_rfs_file_close+0x15c>
<== NOT EXECUTED
4005350c: ba 10 00 1b mov %i3, %i5
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &handle->shared->inode);
40053510: 10 bf ff b7 b 400533ec <rtems_rfs_file_close+0x160>
<== NOT EXECUTED
40053514: d2 06 60 1c ld [ %i1 + 0x1c ], %o1
<== NOT EXECUTED
rrc = rtems_rfs_inode_load (fs, &handle->shared->inode);
40053518: 40 00 0a f5 call 400560ec <rtems_rfs_inode_load>
<== NOT EXECUTED
4005351c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rrc == 0)
40053520: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053524: 12 80 00 20 bne 400535a4 <rtems_rfs_file_close+0x318>
<== NOT EXECUTED
40053528: d2 06 60 1c ld [ %i1 + 0x1c ], %o1
<== NOT EXECUTED
4005352c: 10 bf ff 76 b 40053304 <rtems_rfs_file_close+0x78>
<== NOT EXECUTED
40053530: c4 02 60 18 ld [ %o1 + 0x18 ], %g2
<== NOT EXECUTED
printf ("rtems-rfs: file-close: inode close error: ino=%" PRId32 ": %d: %s\n",
40053534: f4 00 60 14 ld [ %g1 + 0x14 ], %i2
<== NOT EXECUTED
40053538: 40 00 44 1a call 400645a0 <strerror>
<== NOT EXECUTED
4005353c: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
40053540: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
40053544: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40053548: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
4005354c: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
40053550: 7f ff a1 fe call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053554: 90 12 23 c0 or %o0, 0x3c0, %o0 ! 40086fc0 <MSDOS_DOT_NAME+0xe98>
<== NOT EXECUTED
40053558: 10 bf ff d7 b 400534b4 <rtems_rfs_file_close+0x228>
<== NOT EXECUTED
4005355c: d0 06 60 1c ld [ %i1 + 0x1c ], %o0
<== NOT EXECUTED
printf ("rtems-rfs: file-close: map close error: ino=%" PRId32 ": %d: %s\n",
40053560: f4 00 60 14 ld [ %g1 + 0x14 ], %i2
<== NOT EXECUTED
40053564: 40 00 44 0f call 400645a0 <strerror>
<== NOT EXECUTED
40053568: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
4005356c: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
40053570: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40053574: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40053578: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
4005357c: 7f ff a1 f3 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053580: 90 12 23 80 or %o0, 0x380, %o0 ! 40086f80 <MSDOS_DOT_NAME+0xe58>
<== NOT EXECUTED
if (rrc == 0)
40053584: 10 bf ff e1 b 40053508 <rtems_rfs_file_close+0x27c>
<== NOT EXECUTED
40053588: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
if (!rtems_rfs_block_size_equal (&handle->shared->size,
4005358c: c6 02 60 40 ld [ %o1 + 0x40 ], %g3
<== NOT EXECUTED
40053590: 80 a0 80 03 cmp %g2, %g3
<== NOT EXECUTED
40053594: 32 bf ff 8c bne,a 400533c4 <rtems_rfs_file_close+0x138>
<== NOT EXECUTED
40053598: c2 22 60 3c st %g1, [ %o1 + 0x3c ]
<== NOT EXECUTED
4005359c: 10 bf ff 8e b 400533d4 <rtems_rfs_file_close+0x148>
<== NOT EXECUTED
400535a0: 92 02 60 34 add %o1, 0x34, %o1
<== NOT EXECUTED
if (rrc == 0)
400535a4: 10 bf ff 8b b 400533d0 <rtems_rfs_file_close+0x144>
<== NOT EXECUTED
400535a8: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
40053f5c <rtems_rfs_file_get_shared>:
return _Chain_Immutable_head( the_chain )->next;
40053f5c: c2 02 20 74 ld [ %o0 + 0x74 ], %g1
<== NOT EXECUTED
return &the_chain->Tail.Node;
40053f60: 90 02 20 78 add %o0, 0x78, %o0
<== NOT EXECUTED
while (!rtems_chain_is_tail (&fs->file_shares, node))
40053f64: 80 a0 40 08 cmp %g1, %o0
<== NOT EXECUTED
40053f68: 22 80 00 10 be,a 40053fa8 <rtems_rfs_file_get_shared+0x4c>
<== NOT EXECUTED
40053f6c: 82 10 20 00 clr %g1
<== NOT EXECUTED
if (shared->inode.ino == ino)
40053f70: c4 00 60 14 ld [ %g1 + 0x14 ], %g2
<== NOT EXECUTED
40053f74: 80 a2 40 02 cmp %o1, %g2
<== NOT EXECUTED
40053f78: 32 80 00 08 bne,a 40053f98 <rtems_rfs_file_get_shared+0x3c>
<== NOT EXECUTED
40053f7c: c2 00 40 00 ld [ %g1 ], %g1
<== NOT EXECUTED
return shared;
node = rtems_chain_next (node);
}
return NULL;
}
40053f80: 81 c3 e0 08 retl
<== NOT EXECUTED
40053f84: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
if (shared->inode.ino == ino)
40053f88: 80 a0 80 09 cmp %g2, %o1
<== NOT EXECUTED
40053f8c: 22 80 00 08 be,a 40053fac <rtems_rfs_file_get_shared+0x50>
<== NOT EXECUTED
40053f90: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
40053f94: c2 00 40 00 ld [ %g1 ], %g1
<== NOT EXECUTED
while (!rtems_chain_is_tail (&fs->file_shares, node))
40053f98: 80 a0 40 08 cmp %g1, %o0
<== NOT EXECUTED
40053f9c: 32 bf ff fb bne,a 40053f88 <rtems_rfs_file_get_shared+0x2c>
<== NOT EXECUTED
40053fa0: c4 00 60 14 ld [ %g1 + 0x14 ], %g2
<== NOT EXECUTED
return NULL;
40053fa4: 82 10 20 00 clr %g1
<== NOT EXECUTED
}
40053fa8: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
40053fac: 81 c3 e0 08 retl
<== NOT EXECUTED
40053fb0: 01 00 00 00 nop
<== NOT EXECUTED
40053838 <rtems_rfs_file_io_end>:
{
40053838: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
4005383c: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
40053840: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053844: 40 00 11 d7 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053848: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
4005384c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053850: 22 80 00 0c be,a 40053880 <rtems_rfs_file_io_end+0x48>
<== NOT EXECUTED
40053854: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
printf ("rtems-rfs: file-io: end: %s size=%zu\n",
40053858: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
4005385c: 12 80 00 35 bne 40053930 <rtems_rfs_file_io_end+0xf8>
<== NOT EXECUTED
40053860: 13 10 02 18 sethi %hi(0x40086000), %o1
<== NOT EXECUTED
40053864: 13 10 01 f6 sethi %hi(0x4007d800), %o1
<== NOT EXECUTED
40053868: 92 12 60 10 or %o1, 0x10, %o1 ! 4007d810 <_Thread_queue_Operations_default+0x64>
<== NOT EXECUTED
4005386c: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40053870: 94 10 00 19 mov %i1, %o2
<== NOT EXECUTED
40053874: 7f ff a1 35 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053878: 90 12 20 e0 or %o0, 0xe0, %o0
<== NOT EXECUTED
4005387c: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (&handle->buffer))
40053880: c4 07 60 0c ld [ %i5 + 0xc ], %g2
<== NOT EXECUTED
40053884: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40053888: 02 80 00 2c be 40053938 <rtems_rfs_file_io_end+0x100>
<== NOT EXECUTED
4005388c: d0 00 60 98 ld [ %g1 + 0x98 ], %o0
<== NOT EXECUTED
if (!read)
40053890: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40053894: 02 80 00 14 be 400538e4 <rtems_rfs_file_io_end+0xac>
<== NOT EXECUTED
40053898: 92 07 60 04 add %i5, 4, %o1
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),
4005389c: 7f ff f7 82 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400538a0: 01 00 00 00 nop
<== NOT EXECUTED
if (rc > 0)
400538a4: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400538a8: 24 80 00 9b ble,a 40053b14 <rtems_rfs_file_io_end+0x2dc>
<== NOT EXECUTED
400538ac: c4 07 60 14 ld [ %i5 + 0x14 ], %g2
<== NOT EXECUTED
printf (
400538b0: 40 00 43 3c call 400645a0 <strerror>
<== NOT EXECUTED
400538b4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400538b8: 3b 10 02 18 sethi %hi(0x40086000), %i5
<== NOT EXECUTED
400538bc: 98 10 00 08 mov %o0, %o4
<== NOT EXECUTED
400538c0: ba 17 63 40 or %i5, 0x340, %i5
<== NOT EXECUTED
400538c4: 96 10 00 18 mov %i0, %o3
<== NOT EXECUTED
400538c8: 94 10 00 19 mov %i1, %o2
<== NOT EXECUTED
400538cc: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400538d0: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
400538d4: 7f ff a1 1d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400538d8: 90 12 21 08 or %o0, 0x108, %o0 ! 40087108 <MSDOS_DOT_NAME+0xfe0>
<== NOT EXECUTED
return rc;
400538dc: 81 c7 e0 08 ret
<== NOT EXECUTED
400538e0: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (rtems_rfs_file_buffer (handle));
400538e4: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),
400538e8: 7f ff f7 6f call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400538ec: c2 2f 60 04 stb %g1, [ %i5 + 4 ]
<== NOT EXECUTED
if (rc > 0)
400538f0: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400538f4: 24 80 00 49 ble,a 40053a18 <rtems_rfs_file_io_end+0x1e0>
<== NOT EXECUTED
400538f8: c4 07 60 14 ld [ %i5 + 0x14 ], %g2
<== NOT EXECUTED
printf (
400538fc: 40 00 43 29 call 400645a0 <strerror>
<== NOT EXECUTED
40053900: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40053904: 3b 10 01 f6 sethi %hi(0x4007d800), %i5
<== NOT EXECUTED
40053908: 98 10 00 08 mov %o0, %o4
<== NOT EXECUTED
4005390c: ba 17 60 10 or %i5, 0x10, %i5
<== NOT EXECUTED
40053910: 96 10 00 18 mov %i0, %o3
<== NOT EXECUTED
40053914: 94 10 00 19 mov %i1, %o2
<== NOT EXECUTED
40053918: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4005391c: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40053920: 7f ff a1 0a call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053924: 90 12 21 08 or %o0, 0x108, %o0 ! 40087108 <MSDOS_DOT_NAME+0xfe0>
<== NOT EXECUTED
return rc;
40053928: 81 c7 e0 08 ret
<== NOT EXECUTED
4005392c: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: file-io: end: %s size=%zu\n",
40053930: 10 bf ff cf b 4005386c <rtems_rfs_file_io_end+0x34>
<== NOT EXECUTED
40053934: 92 12 63 40 or %o1, 0x340, %o1
<== NOT EXECUTED
handle->bpos.boff += size;
40053938: c4 07 60 14 ld [ %i5 + 0x14 ], %g2
<== NOT EXECUTED
4005393c: b2 06 40 02 add %i1, %g2, %i1
<== NOT EXECUTED
40053940: f2 27 60 14 st %i1, [ %i5 + 0x14 ]
<== NOT EXECUTED
40053944: 86 1e a0 01 xor %i2, 1, %g3
<== NOT EXECUTED
rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))
40053948: c4 02 20 08 ld [ %o0 + 8 ], %g2
<== NOT EXECUTED
if (handle->bpos.boff >=
4005394c: 80 a6 40 02 cmp %i1, %g2
<== NOT EXECUTED
40053950: 1a 80 00 3a bcc 40053a38 <rtems_rfs_file_io_end+0x200>
<== NOT EXECUTED
40053954: b0 10 20 00 clr %i0
<== NOT EXECUTED
if (!read &&
40053958: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
4005395c: 12 80 00 0e bne 40053994 <rtems_rfs_file_io_end+0x15c>
<== NOT EXECUTED
40053960: 84 10 20 00 clr %g2
<== NOT EXECUTED
rtems_rfs_block_map_past_end (rtems_rfs_file_map (handle),
40053964: f8 07 60 10 ld [ %i5 + 0x10 ], %i4
<== NOT EXECUTED
if (!read &&
40053968: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
4005396c: 02 80 00 39 be 40053a50 <rtems_rfs_file_io_end+0x218>
<== NOT EXECUTED
40053970: c4 00 60 3c ld [ %g1 + 0x3c ], %g2
<== NOT EXECUTED
rtems_rfs_block_map_past_end (rtems_rfs_file_map (handle),
40053974: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40053978: 12 80 00 37 bne 40053a54 <rtems_rfs_file_io_end+0x21c>
<== NOT EXECUTED
4005397c: 80 a7 00 02 cmp %i4, %g2
<== NOT EXECUTED
40053980: c8 07 60 14 ld [ %i5 + 0x14 ], %g4
<== NOT EXECUTED
map->size.offset = offset;
40053984: c8 20 60 40 st %g4, [ %g1 + 0x40 ]
<== NOT EXECUTED
map->dirty = true;
40053988: 88 10 20 01 mov 1, %g4
<== NOT EXECUTED
4005398c: c8 28 60 34 stb %g4, [ %g1 + 0x34 ]
<== NOT EXECUTED
length = true;
40053990: 84 10 20 01 mov 1, %g2
<== NOT EXECUTED
atime = rtems_rfs_file_update_atime (handle);
40053994: e0 07 40 00 ld [ %i5 ], %l0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
40053998: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
4005399c: 92 10 20 00 clr %o1
<== NOT EXECUTED
atime = rtems_rfs_file_update_atime (handle);
400539a0: b2 38 00 10 xnor %g0, %l0, %i1
<== NOT EXECUTED
mtime = rtems_rfs_file_update_mtime (handle) && mtime;
400539a4: b9 34 20 01 srl %l0, 1, %i4
<== NOT EXECUTED
length = rtems_rfs_file_update_length (handle) && length;
400539a8: b7 34 20 02 srl %l0, 2, %i3
<== NOT EXECUTED
mtime = rtems_rfs_file_update_mtime (handle) && mtime;
400539ac: b8 1f 20 01 xor %i4, 1, %i4
<== NOT EXECUTED
length = rtems_rfs_file_update_length (handle) && length;
400539b0: b6 1e e0 01 xor %i3, 1, %i3
<== NOT EXECUTED
mtime = rtems_rfs_file_update_mtime (handle) && mtime;
400539b4: b8 0f 20 01 and %i4, 1, %i4
<== NOT EXECUTED
length = rtems_rfs_file_update_length (handle) && length;
400539b8: b6 0e e0 01 and %i3, 1, %i3
<== NOT EXECUTED
mtime = rtems_rfs_file_update_mtime (handle) && mtime;
400539bc: b8 0f 00 03 and %i4, %g3, %i4
<== NOT EXECUTED
length = rtems_rfs_file_update_length (handle) && length;
400539c0: b6 0e c0 02 and %i3, %g2, %i3
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
400539c4: 40 00 11 77 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400539c8: b2 0e 60 01 and %i1, 1, %i1
<== NOT EXECUTED
400539cc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400539d0: 32 80 00 30 bne,a 40053a90 <rtems_rfs_file_io_end+0x258>
<== NOT EXECUTED
400539d4: d4 07 60 14 ld [ %i5 + 0x14 ], %o2
<== NOT EXECUTED
400539d8: b8 0f 20 ff and %i4, 0xff, %i4
<== NOT EXECUTED
400539dc: b6 0e e0 ff and %i3, 0xff, %i3
<== NOT EXECUTED
if (atime || mtime)
400539e0: b2 8e 60 ff andcc %i1, 0xff, %i1
<== NOT EXECUTED
400539e4: 12 80 00 3d bne 40053ad8 <rtems_rfs_file_io_end+0x2a0>
<== NOT EXECUTED
400539e8: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
400539ec: 12 80 00 3b bne 40053ad8 <rtems_rfs_file_io_end+0x2a0>
<== NOT EXECUTED
400539f0: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
if (length)
400539f4: 02 80 00 25 be 40053a88 <rtems_rfs_file_io_end+0x250>
<== NOT EXECUTED
400539f8: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_block_map_count (rtems_rfs_file_map (handle));
400539fc: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
handle->shared->size.count =
40053a00: c6 00 60 3c ld [ %g1 + 0x3c ], %g3
<== NOT EXECUTED
handle->shared->size.offset =
40053a04: c4 00 60 40 ld [ %g1 + 0x40 ], %g2
<== NOT EXECUTED
handle->shared->size.count =
40053a08: c6 20 60 84 st %g3, [ %g1 + 0x84 ]
<== NOT EXECUTED
handle->shared->size.offset =
40053a0c: c4 20 60 88 st %g2, [ %g1 + 0x88 ]
<== NOT EXECUTED
40053a10: 81 c7 e0 08 ret
<== NOT EXECUTED
40053a14: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))
40053a18: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
handle->bpos.boff += size;
40053a1c: b2 06 40 02 add %i1, %g2, %i1
<== NOT EXECUTED
rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))
40053a20: c4 00 60 98 ld [ %g1 + 0x98 ], %g2
<== NOT EXECUTED
handle->bpos.boff += size;
40053a24: f2 27 60 14 st %i1, [ %i5 + 0x14 ]
<== NOT EXECUTED
rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))
40053a28: c4 00 a0 08 ld [ %g2 + 8 ], %g2
<== NOT EXECUTED
if (handle->bpos.boff >=
40053a2c: 80 a0 80 19 cmp %g2, %i1
<== NOT EXECUTED
40053a30: 18 bf ff cd bgu 40053964 <rtems_rfs_file_io_end+0x12c>
<== NOT EXECUTED
40053a34: 86 10 20 01 mov 1, %g3
<== NOT EXECUTED
handle->bpos.bno++;
40053a38: c8 07 60 10 ld [ %i5 + 0x10 ], %g4
<== NOT EXECUTED
40053a3c: 88 01 20 01 inc %g4
<== NOT EXECUTED
handle->bpos.boff -= rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));
40053a40: b2 26 40 02 sub %i1, %g2, %i1
<== NOT EXECUTED
handle->bpos.bno++;
40053a44: c8 27 60 10 st %g4, [ %i5 + 0x10 ]
<== NOT EXECUTED
handle->bpos.boff -= rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));
40053a48: 10 bf ff c4 b 40053958 <rtems_rfs_file_io_end+0x120>
<== NOT EXECUTED
40053a4c: f2 27 60 14 st %i1, [ %i5 + 0x14 ]
<== NOT EXECUTED
rtems_rfs_block_map_past_end (rtems_rfs_file_map (handle),
40053a50: 80 a7 00 02 cmp %i4, %g2
<== NOT EXECUTED
40053a54: 3a bf ff cc bcc,a 40053984 <rtems_rfs_file_io_end+0x14c>
<== NOT EXECUTED
40053a58: c8 07 60 14 ld [ %i5 + 0x14 ], %g4
<== NOT EXECUTED
40053a5c: 88 00 bf ff add %g2, -1, %g4
<== NOT EXECUTED
40053a60: 80 a7 00 04 cmp %i4, %g4
<== NOT EXECUTED
40053a64: 12 bf ff cc bne 40053994 <rtems_rfs_file_io_end+0x15c>
<== NOT EXECUTED
40053a68: 84 10 20 00 clr %g2
<== NOT EXECUTED
40053a6c: c8 07 60 14 ld [ %i5 + 0x14 ], %g4
<== NOT EXECUTED
40053a70: f8 00 60 40 ld [ %g1 + 0x40 ], %i4
<== NOT EXECUTED
40053a74: 80 a1 00 1c cmp %g4, %i4
<== NOT EXECUTED
40053a78: 28 bf ff c8 bleu,a 40053998 <rtems_rfs_file_io_end+0x160>
<== NOT EXECUTED
40053a7c: e0 07 40 00 ld [ %i5 ], %l0
<== NOT EXECUTED
40053a80: 10 bf ff c2 b 40053988 <rtems_rfs_file_io_end+0x150>
<== NOT EXECUTED
40053a84: c8 20 60 40 st %g4, [ %g1 + 0x40 ]
<== NOT EXECUTED
}
40053a88: 81 c7 e0 08 ret
<== NOT EXECUTED
40053a8c: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: file-io: end: pos=%" PRIu32 ":%" PRIu32 " %c %c %c\n",
40053a90: d2 07 60 10 ld [ %i5 + 0x10 ], %o1
<== NOT EXECUTED
40053a94: 96 0c 20 01 and %l0, 1, %o3
<== NOT EXECUTED
40053a98: b8 0f 20 ff and %i4, 0xff, %i4
<== NOT EXECUTED
40053a9c: b6 0e e0 ff and %i3, 0xff, %i3
<== NOT EXECUTED
40053aa0: 98 07 3f ff add %i4, -1, %o4
<== NOT EXECUTED
40053aa4: 9a 06 ff ff add %i3, -1, %o5
<== NOT EXECUTED
40053aa8: 96 20 00 0b neg %o3
<== NOT EXECUTED
40053aac: 98 0b 3f e0 and %o4, -32, %o4
<== NOT EXECUTED
40053ab0: 96 0a ff ec and %o3, -20, %o3
<== NOT EXECUTED
40053ab4: 98 03 20 4d add %o4, 0x4d, %o4
<== NOT EXECUTED
40053ab8: 9a 0b 7f e1 and %o5, -31, %o5
<== NOT EXECUTED
40053abc: 96 02 e0 41 add %o3, 0x41, %o3
<== NOT EXECUTED
40053ac0: 9a 03 60 4c add %o5, 0x4c, %o5
<== NOT EXECUTED
40053ac4: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40053ac8: 7f ff a0 a0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053acc: 90 12 21 50 or %o0, 0x150, %o0 ! 40087150 <MSDOS_DOT_NAME+0x1028>
<== NOT EXECUTED
if (atime || mtime)
40053ad0: 10 bf ff c5 b 400539e4 <rtems_rfs_file_io_end+0x1ac>
<== NOT EXECUTED
40053ad4: b2 8e 60 ff andcc %i1, 0xff, %i1
<== NOT EXECUTED
time_t now = time (NULL);
40053ad8: 40 00 5f df call 4006ba54 <time>
<== NOT EXECUTED
40053adc: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (read && atime)
40053ae0: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40053ae4: 02 80 00 06 be 40053afc <rtems_rfs_file_io_end+0x2c4>
<== NOT EXECUTED
40053ae8: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40053aec: 02 80 00 05 be 40053b00 <rtems_rfs_file_io_end+0x2c8>
<== NOT EXECUTED
40053af0: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
handle->shared->atime = now;
40053af4: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
40053af8: d2 20 60 8c st %o1, [ %g1 + 0x8c ]
<== NOT EXECUTED
if (!read && mtime)
40053afc: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
40053b00: 02 bf ff bd be 400539f4 <rtems_rfs_file_io_end+0x1bc>
<== NOT EXECUTED
40053b04: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
handle->shared->mtime = now;
40053b08: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
40053b0c: 10 bf ff ba b 400539f4 <rtems_rfs_file_io_end+0x1bc>
<== NOT EXECUTED
40053b10: d2 20 60 90 st %o1, [ %g1 + 0x90 ]
<== NOT EXECUTED
rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))
40053b14: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
handle->bpos.boff += size;
40053b18: b2 06 40 02 add %i1, %g2, %i1
<== NOT EXECUTED
rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))
40053b1c: c4 00 60 98 ld [ %g1 + 0x98 ], %g2
<== NOT EXECUTED
handle->bpos.boff += size;
40053b20: f2 27 60 14 st %i1, [ %i5 + 0x14 ]
<== NOT EXECUTED
rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))
40053b24: c4 00 a0 08 ld [ %g2 + 8 ], %g2
<== NOT EXECUTED
if (handle->bpos.boff >=
40053b28: 80 a6 40 02 cmp %i1, %g2
<== NOT EXECUTED
40053b2c: 1a bf ff c3 bcc 40053a38 <rtems_rfs_file_io_end+0x200>
<== NOT EXECUTED
40053b30: 86 10 20 00 clr %g3
<== NOT EXECUTED
length = false;
40053b34: 10 bf ff 98 b 40053994 <rtems_rfs_file_io_end+0x15c>
<== NOT EXECUTED
40053b38: 84 10 20 00 clr %g2
<== NOT EXECUTED
400535ac <rtems_rfs_file_io_start>:
{
400535ac: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
400535b0: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
400535b4: 92 10 20 00 clr %o1
<== NOT EXECUTED
400535b8: 40 00 12 7a call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400535bc: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
400535c0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400535c4: 22 80 00 0d be,a 400535f8 <rtems_rfs_file_io_start+0x4c>
<== NOT EXECUTED
400535c8: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
printf ("rtems-rfs: file-io: start: %s pos=%" PRIu32 ":%" PRIu32 "\n",
400535cc: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
400535d0: 22 80 00 2f be,a 4005368c <rtems_rfs_file_io_start+0xe0>
<== NOT EXECUTED
400535d4: 13 10 01 f6 sethi %hi(0x4007d800), %o1
<== NOT EXECUTED
400535d8: 13 10 02 18 sethi %hi(0x40086000), %o1
<== NOT EXECUTED
400535dc: 92 12 63 40 or %o1, 0x340, %o1 ! 40086340 <MSDOS_DOT_NAME+0x218>
<== NOT EXECUTED
400535e0: d6 07 60 14 ld [ %i5 + 0x14 ], %o3
<== NOT EXECUTED
400535e4: d4 07 60 10 ld [ %i5 + 0x10 ], %o2
<== NOT EXECUTED
400535e8: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
400535ec: 7f ff a1 d7 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400535f0: 90 12 20 28 or %o0, 0x28, %o0 ! 40087028 <MSDOS_DOT_NAME+0xf00>
<== NOT EXECUTED
if (!rtems_rfs_buffer_handle_has_block (&handle->buffer))
400535f4: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
400535f8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400535fc: 02 80 00 30 be 400536bc <rtems_rfs_file_io_start+0x110>
<== NOT EXECUTED
40053600: d2 07 60 1c ld [ %i5 + 0x1c ], %o1
<== NOT EXECUTED
if (read
40053604: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40053608: 22 80 00 0e be,a 40053640 <rtems_rfs_file_io_start+0x94>
<== NOT EXECUTED
4005360c: c2 02 60 98 ld [ %o1 + 0x98 ], %g1
<== NOT EXECUTED
&& rtems_rfs_block_map_last (rtems_rfs_file_map (handle))
40053610: c4 02 60 44 ld [ %o1 + 0x44 ], %g2
<== NOT EXECUTED
40053614: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40053618: 12 80 00 1f bne 40053694 <rtems_rfs_file_io_start+0xe8>
<== NOT EXECUTED
4005361c: c2 02 60 3c ld [ %o1 + 0x3c ], %g1
<== NOT EXECUTED
40053620: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40053624: 12 80 00 1d bne 40053698 <rtems_rfs_file_io_start+0xec>
<== NOT EXECUTED
40053628: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
&& rtems_rfs_block_map_size_offset (rtems_rfs_file_map (handle)))
4005362c: f8 02 60 40 ld [ %o1 + 0x40 ], %i4
<== NOT EXECUTED
40053630: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
40053634: 32 80 00 05 bne,a 40053648 <rtems_rfs_file_io_start+0x9c>
<== NOT EXECUTED
40053638: c2 07 60 14 ld [ %i5 + 0x14 ], %g1
<== NOT EXECUTED
size = rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));
4005363c: c2 02 60 98 ld [ %o1 + 0x98 ], %g1
<== NOT EXECUTED
40053640: f8 00 60 08 ld [ %g1 + 8 ], %i4
<== NOT EXECUTED
*available = size - rtems_rfs_file_block_offset (handle);
40053644: c2 07 60 14 ld [ %i5 + 0x14 ], %g1
<== NOT EXECUTED
40053648: 82 27 00 01 sub %i4, %g1, %g1
<== NOT EXECUTED
4005364c: c2 26 40 00 st %g1, [ %i1 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
40053650: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
40053654: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053658: 40 00 12 52 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005365c: b0 10 20 00 clr %i0
<== NOT EXECUTED
40053660: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053664: 32 80 00 04 bne,a 40053674 <rtems_rfs_file_io_start+0xc8>
<== NOT EXECUTED
40053668: d2 06 40 00 ld [ %i1 ], %o1
<== NOT EXECUTED
}
4005366c: 81 c7 e0 08 ret
<== NOT EXECUTED
40053670: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: file-io: start: available=%zu (%zu)\n",
40053674: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
40053678: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
4005367c: 7f ff a1 b3 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053680: 90 12 20 b0 or %o0, 0xb0, %o0 ! 400870b0 <MSDOS_DOT_NAME+0xf88>
<== NOT EXECUTED
}
40053684: 81 c7 e0 08 ret
<== NOT EXECUTED
40053688: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: file-io: start: %s pos=%" PRIu32 ":%" PRIu32 "\n",
4005368c: 10 bf ff d5 b 400535e0 <rtems_rfs_file_io_start+0x34>
<== NOT EXECUTED
40053690: 92 12 60 10 or %o1, 0x10, %o1
<== NOT EXECUTED
&& rtems_rfs_block_map_last (rtems_rfs_file_map (handle))
40053694: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
40053698: 80 a0 80 01 cmp %g2, %g1
<== NOT EXECUTED
4005369c: 32 bf ff e9 bne,a 40053640 <rtems_rfs_file_io_start+0x94>
<== NOT EXECUTED
400536a0: c2 02 60 98 ld [ %o1 + 0x98 ], %g1
<== NOT EXECUTED
&& rtems_rfs_block_map_size_offset (rtems_rfs_file_map (handle)))
400536a4: f8 02 60 40 ld [ %o1 + 0x40 ], %i4
<== NOT EXECUTED
400536a8: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
400536ac: 32 bf ff e7 bne,a 40053648 <rtems_rfs_file_io_start+0x9c>
<== NOT EXECUTED
400536b0: c2 07 60 14 ld [ %i5 + 0x14 ], %g1
<== NOT EXECUTED
size = rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));
400536b4: 10 bf ff e3 b 40053640 <rtems_rfs_file_io_start+0x94>
<== NOT EXECUTED
400536b8: c2 02 60 98 ld [ %o1 + 0x98 ], %g1
<== NOT EXECUTED
rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),
400536bc: d0 02 60 98 ld [ %o1 + 0x98 ], %o0
<== NOT EXECUTED
400536c0: 94 07 60 10 add %i5, 0x10, %o2
<== NOT EXECUTED
400536c4: 96 07 bf fc add %fp, -4, %o3
<== NOT EXECUTED
400536c8: 7f ff f3 e8 call 40050668 <rtems_rfs_block_map_find>
<== NOT EXECUTED
400536cc: 92 02 60 34 add %o1, 0x34, %o1
<== NOT EXECUTED
if (rc > 0)
400536d0: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400536d4: 04 80 00 0b ble 40053700 <rtems_rfs_file_io_start+0x154>
<== NOT EXECUTED
400536d8: 82 1e 20 06 xor %i0, 6, %g1
<== NOT EXECUTED
if (read && (rc == ENXIO))
400536dc: 80 a0 00 01 cmp %g0, %g1
<== NOT EXECUTED
400536e0: 82 60 3f ff subx %g0, -1, %g1
<== NOT EXECUTED
400536e4: 82 0e 80 01 and %i2, %g1, %g1
<== NOT EXECUTED
400536e8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400536ec: 02 80 00 29 be 40053790 <rtems_rfs_file_io_start+0x1e4>
<== NOT EXECUTED
400536f0: b8 10 00 01 mov %g1, %i4
<== NOT EXECUTED
*available = 0;
400536f4: c0 26 40 00 clr [ %i1 ]
<== NOT EXECUTED
return 0;
400536f8: 81 c7 e0 08 ret
<== NOT EXECUTED
400536fc: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
if (!read &&
40053700: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40053704: 12 80 00 3d bne 400537f8 <rtems_rfs_file_io_start+0x24c>
<== NOT EXECUTED
40053708: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
4005370c: c2 07 60 14 ld [ %i5 + 0x14 ], %g1
<== NOT EXECUTED
40053710: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40053714: 12 80 00 3a bne 400537fc <rtems_rfs_file_io_start+0x250>
<== NOT EXECUTED
40053718: 92 10 20 00 clr %o1
<== NOT EXECUTED
(*available < rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle)))))
4005371c: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
40053720: c2 00 60 98 ld [ %g1 + 0x98 ], %g1
<== NOT EXECUTED
(rtems_rfs_file_block_offset (handle) ||
40053724: c4 06 40 00 ld [ %i1 ], %g2
<== NOT EXECUTED
40053728: c2 00 60 08 ld [ %g1 + 8 ], %g1
<== NOT EXECUTED
4005372c: 80 a0 80 01 cmp %g2, %g1
<== NOT EXECUTED
40053730: 0a 80 00 33 bcs 400537fc <rtems_rfs_file_io_start+0x250>
<== NOT EXECUTED
40053734: 01 00 00 00 nop
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
40053738: 40 00 12 1a call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005373c: 01 00 00 00 nop
<== NOT EXECUTED
40053740: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053744: 02 80 00 08 be 40053764 <rtems_rfs_file_io_start+0x1b8>
<== NOT EXECUTED
40053748: b8 10 20 00 clr %i4
<== NOT EXECUTED
printf ("rtems-rfs: file-io: start: block=%" PRIu32 " request-read=%s\n",
4005374c: d2 07 bf fc ld [ %fp + -4 ], %o1
<== NOT EXECUTED
40053750: 15 10 02 02 sethi %hi(0x40080800), %o2
<== NOT EXECUTED
40053754: 94 12 a1 d8 or %o2, 0x1d8, %o2 ! 400809d8 <rtems_rtc_shell_usage+0x550>
<== NOT EXECUTED
40053758: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
4005375c: 7f ff a1 7b call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053760: 90 12 20 78 or %o0, 0x78, %o0 ! 40087078 <MSDOS_DOT_NAME+0xf50>
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (rtems_rfs_file_fs (handle),
40053764: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
40053768: d4 07 bf fc ld [ %fp + -4 ], %o2
<== NOT EXECUTED
4005376c: d0 00 60 98 ld [ %g1 + 0x98 ], %o0
<== NOT EXECUTED
40053770: 96 0f 20 ff and %i4, 0xff, %o3
<== NOT EXECUTED
40053774: 7f ff f7 05 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40053778: 92 07 60 04 add %i5, 4, %o1
<== NOT EXECUTED
if (rc > 0)
4005377c: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40053780: 14 bf ff c1 bg 40053684 <rtems_rfs_file_io_start+0xd8>
<== NOT EXECUTED
40053784: 01 00 00 00 nop
<== NOT EXECUTED
40053788: 10 bf ff 9f b 40053604 <rtems_rfs_file_io_start+0x58>
<== NOT EXECUTED
4005378c: d2 07 60 1c ld [ %i5 + 0x1c ], %o1
<== NOT EXECUTED
if (rc != ENXIO)
40053790: 80 a6 20 06 cmp %i0, 6
<== NOT EXECUTED
40053794: 12 bf ff b6 bne 4005366c <rtems_rfs_file_io_start+0xc0>
<== NOT EXECUTED
40053798: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
4005379c: 40 00 12 01 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400537a0: 92 10 20 00 clr %o1
<== NOT EXECUTED
400537a4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400537a8: 12 80 00 20 bne 40053828 <rtems_rfs_file_io_start+0x27c>
<== NOT EXECUTED
400537ac: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_grow (rtems_rfs_file_fs (handle),
400537b0: d2 07 60 1c ld [ %i5 + 0x1c ], %o1
<== NOT EXECUTED
400537b4: d0 02 60 98 ld [ %o1 + 0x98 ], %o0
<== NOT EXECUTED
400537b8: 96 07 bf fc add %fp, -4, %o3
<== NOT EXECUTED
400537bc: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
400537c0: 7f ff f4 2e call 40050878 <rtems_rfs_block_map_grow>
<== NOT EXECUTED
400537c4: 92 02 60 34 add %o1, 0x34, %o1
<== NOT EXECUTED
if (rc > 0)
400537c8: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400537cc: 14 bf ff a8 bg 4005366c <rtems_rfs_file_io_start+0xc0>
<== NOT EXECUTED
400537d0: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
400537d4: 40 00 11 f3 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400537d8: 92 10 20 00 clr %o1
<== NOT EXECUTED
400537dc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400537e0: 22 bf ff e1 be,a 40053764 <rtems_rfs_file_io_start+0x1b8>
<== NOT EXECUTED
400537e4: b8 10 20 00 clr %i4
<== NOT EXECUTED
printf ("rtems-rfs: file-io: start: block=%" PRIu32 " request-read=%s\n",
400537e8: 15 10 02 02 sethi %hi(0x40080800), %o2
<== NOT EXECUTED
400537ec: d2 07 bf fc ld [ %fp + -4 ], %o1
<== NOT EXECUTED
400537f0: 10 bf ff da b 40053758 <rtems_rfs_file_io_start+0x1ac>
<== NOT EXECUTED
400537f4: 94 12 a1 d8 or %o2, 0x1d8, %o2
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
400537f8: 92 10 20 00 clr %o1
<== NOT EXECUTED
400537fc: 40 00 11 e9 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053800: 01 00 00 00 nop
<== NOT EXECUTED
40053804: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053808: 02 80 00 06 be 40053820 <rtems_rfs_file_io_start+0x274>
<== NOT EXECUTED
4005380c: b8 10 00 08 mov %o0, %i4
<== NOT EXECUTED
printf ("rtems-rfs: file-io: start: block=%" PRIu32 " request-read=%s\n",
40053810: 15 10 02 02 sethi %hi(0x40080800), %o2
<== NOT EXECUTED
40053814: d2 07 bf fc ld [ %fp + -4 ], %o1
<== NOT EXECUTED
40053818: 10 bf ff d0 b 40053758 <rtems_rfs_file_io_start+0x1ac>
<== NOT EXECUTED
4005381c: 94 12 a1 e0 or %o2, 0x1e0, %o2
<== NOT EXECUTED
40053820: 10 bf ff d1 b 40053764 <rtems_rfs_file_io_start+0x1b8>
<== NOT EXECUTED
40053824: b8 10 20 01 mov 1, %i4
<== NOT EXECUTED
printf ("rtems-rfs: file-io: start: grow\n");
40053828: 7f ff a1 57 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4005382c: 90 12 20 58 or %o0, 0x58, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_grow (rtems_rfs_file_fs (handle),
40053830: 10 bf ff e1 b 400537b4 <rtems_rfs_file_io_start+0x208>
<== NOT EXECUTED
40053834: d2 07 60 1c ld [ %i5 + 0x1c ], %o1
<== NOT EXECUTED
40052f64 <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)
{
40052f64: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
rtems_rfs_file_handle* handle;
rtems_rfs_file_shared* shared;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))
40052f68: 90 10 20 08 mov 8, %o0
<== NOT EXECUTED
40052f6c: 92 10 20 00 clr %o1
<== NOT EXECUTED
40052f70: 40 00 14 0c call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052f74: a2 10 00 18 mov %i0, %l1
<== NOT EXECUTED
40052f78: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052f7c: 12 80 00 4d bne 400530b0 <rtems_rfs_file_open+0x14c>
<== NOT EXECUTED
40052f80: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
printf ("rtems-rfs: file-open: ino=%" PRId32 "\n", ino);
*file = NULL;
40052f84: c0 26 c0 00 clr [ %i3 ]
<== NOT EXECUTED
/*
* 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));
40052f88: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40052f8c: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
40052f90: 7f fe dd 1c call 4000a400 <calloc>
<== NOT EXECUTED
40052f94: b0 10 20 0c mov 0xc, %i0
<== NOT EXECUTED
if (!handle)
40052f98: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40052f9c: 02 80 00 43 be 400530a8 <rtems_rfs_file_open+0x144>
<== NOT EXECUTED
40052fa0: b8 10 00 08 mov %o0, %i4
<== NOT EXECUTED
handle->dirty = false;
40052fa4: c0 2a 20 04 clrb [ %o0 + 4 ]
<== NOT EXECUTED
return &the_chain->Tail.Node;
40052fa8: a0 04 60 78 add %l1, 0x78, %l0
<== NOT EXECUTED
handle->bnum = 0;
40052fac: c0 22 20 08 clr [ %o0 + 8 ]
<== NOT EXECUTED
handle->buffer = NULL;
40052fb0: c0 22 20 0c clr [ %o0 + 0xc ]
<== NOT EXECUTED
return _Chain_Immutable_head( the_chain )->next;
40052fb4: fa 04 60 74 ld [ %l1 + 0x74 ], %i5
<== NOT EXECUTED
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))
40052fb8: 80 a7 40 10 cmp %i5, %l0
<== NOT EXECUTED
40052fbc: 32 80 00 08 bne,a 40052fdc <rtems_rfs_file_open+0x78>
<== NOT EXECUTED
40052fc0: c2 07 60 14 ld [ %i5 + 0x14 ], %g1
<== NOT EXECUTED
shared = malloc (sizeof (rtems_rfs_file_shared));
40052fc4: 10 80 00 17 b 40053020 <rtems_rfs_file_open+0xbc>
<== NOT EXECUTED
40052fc8: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
while (!rtems_chain_is_tail (&fs->file_shares, node))
40052fcc: 80 a7 40 10 cmp %i5, %l0
<== NOT EXECUTED
40052fd0: 02 80 00 14 be 40053020 <rtems_rfs_file_open+0xbc>
<== NOT EXECUTED
40052fd4: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
{
rtems_rfs_file_shared* shared;
shared = (rtems_rfs_file_shared*) node;
if (shared->inode.ino == ino)
40052fd8: c2 07 60 14 ld [ %i5 + 0x14 ], %g1
<== NOT EXECUTED
40052fdc: 80 a6 40 01 cmp %i1, %g1
<== NOT EXECUTED
40052fe0: 32 bf ff fb bne,a 40052fcc <rtems_rfs_file_open+0x68>
<== NOT EXECUTED
40052fe4: fa 07 40 00 ld [ %i5 ], %i5
<== NOT EXECUTED
shared->references++;
40052fe8: c2 07 60 08 ld [ %i5 + 8 ], %g1
<== NOT EXECUTED
40052fec: 82 00 60 01 inc %g1
<== NOT EXECUTED
40052ff0: c2 27 60 08 st %g1, [ %i5 + 8 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))
40052ff4: 90 10 20 08 mov 8, %o0
<== NOT EXECUTED
40052ff8: 40 00 13 ea call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40052ffc: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053000: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053004: 32 80 00 30 bne,a 400530c4 <rtems_rfs_file_open+0x160>
<== NOT EXECUTED
40053008: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
handle->flags = oflag;
4005300c: f4 27 00 00 st %i2, [ %i4 ]
<== NOT EXECUTED
handle->shared = shared;
40053010: fa 27 20 1c st %i5, [ %i4 + 0x1c ]
<== NOT EXECUTED
*file = handle;
40053014: f8 26 c0 00 st %i4, [ %i3 ]
<== NOT EXECUTED
return 0;
40053018: 81 c7 e0 08 ret
<== NOT EXECUTED
4005301c: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
shared = malloc (sizeof (rtems_rfs_file_shared));
40053020: 90 10 20 9c mov 0x9c, %o0
<== NOT EXECUTED
40053024: 7f fe dc f7 call 4000a400 <calloc>
<== NOT EXECUTED
40053028: a4 07 20 04 add %i4, 4, %l2
<== NOT EXECUTED
if (!shared)
4005302c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053030: 02 80 00 8f be 4005326c <rtems_rfs_file_open+0x308>
<== NOT EXECUTED
40053034: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, ino, &shared->inode, true);
40053038: a6 07 60 0c add %i5, 0xc, %l3
<== NOT EXECUTED
4005303c: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40053040: 94 10 00 13 mov %l3, %o2
<== NOT EXECUTED
40053044: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40053048: 40 00 0c 56 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
4005304c: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
if (rc > 0)
40053050: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40053054: 04 80 00 25 ble 400530e8 <rtems_rfs_file_open+0x184>
<== NOT EXECUTED
40053058: 90 10 20 08 mov 8, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))
4005305c: 40 00 13 d1 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053060: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053064: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053068: 02 80 00 09 be 4005308c <rtems_rfs_file_open+0x128>
<== NOT EXECUTED
4005306c: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: file-open: inode open failed: %d: %s\n",
40053070: 40 00 45 4c call 400645a0 <strerror>
<== NOT EXECUTED
40053074: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40053078: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
4005307c: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40053080: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
40053084: 7f ff a3 31 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053088: 90 12 22 b8 or %o0, 0x2b8, %o0 ! 40086eb8 <MSDOS_DOT_NAME+0xd90>
<== NOT EXECUTED
free (shared);
4005308c: 7f fe e1 7d call 4000b680 <free>
<== NOT EXECUTED
40053090: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40053094: 92 10 00 12 mov %l2, %o1
<== NOT EXECUTED
40053098: 7f ff f9 83 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
4005309c: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
free (handle);
400530a0: 7f fe e1 78 call 4000b680 <free>
<== NOT EXECUTED
400530a4: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
return rc;
400530a8: 81 c7 e0 08 ret
<== NOT EXECUTED
400530ac: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: file-open: ino=%" PRId32 "\n", ino);
400530b0: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
400530b4: 7f ff a3 25 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400530b8: 90 12 22 70 or %o0, 0x270, %o0 ! 40086e70 <MSDOS_DOT_NAME+0xd48>
<== NOT EXECUTED
*file = NULL;
400530bc: 10 bf ff b3 b 40052f88 <rtems_rfs_file_open+0x24>
<== NOT EXECUTED
400530c0: c0 26 c0 00 clr [ %i3 ]
<== NOT EXECUTED
printf ("rtems-rfs: file-open: ino=%" PRId32 " shared\n", ino);
400530c4: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
return 0;
400530c8: b0 10 20 00 clr %i0
<== NOT EXECUTED
printf ("rtems-rfs: file-open: ino=%" PRId32 " shared\n", ino);
400530cc: 7f ff a3 1f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400530d0: 90 12 22 90 or %o0, 0x290, %o0
<== NOT EXECUTED
handle->flags = oflag;
400530d4: f4 27 00 00 st %i2, [ %i4 ]
<== NOT EXECUTED
handle->shared = shared;
400530d8: fa 27 20 1c st %i5, [ %i4 + 0x1c ]
<== NOT EXECUTED
*file = handle;
400530dc: f8 26 c0 00 st %i4, [ %i3 ]
<== NOT EXECUTED
return 0;
400530e0: 81 c7 e0 08 ret
<== NOT EXECUTED
400530e4: 81 e8 00 00 restore
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, &shared->inode, &shared->map);
400530e8: 94 07 60 34 add %i5, 0x34, %o2
<== NOT EXECUTED
400530ec: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
400530f0: 7f ff f4 8c call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
400530f4: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
if (rc > 0)
400530f8: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400530fc: 04 80 00 12 ble 40053144 <rtems_rfs_file_open+0x1e0>
<== NOT EXECUTED
40053100: 90 10 20 08 mov 8, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))
40053104: 40 00 13 a7 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053108: 92 10 20 00 clr %o1
<== NOT EXECUTED
4005310c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053110: 02 80 00 0a be 40053138 <rtems_rfs_file_open+0x1d4>
<== NOT EXECUTED
40053114: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
printf ("rtems-rfs: file-open: block map open failed: %d: %s\n",
40053118: 40 00 45 22 call 400645a0 <strerror>
<== NOT EXECUTED
4005311c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40053120: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
40053124: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40053128: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
4005312c: 7f ff a3 07 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053130: 90 12 22 f0 or %o0, 0x2f0, %o0 ! 40086ef0 <MSDOS_DOT_NAME+0xdc8>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &shared->inode);
40053134: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
40053138: 40 00 0c 91 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
4005313c: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
40053140: 30 bf ff d3 b,a 4005308c <rtems_rfs_file_open+0x128>
<== NOT EXECUTED
shared->references = 1;
40053144: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40053148: c2 27 60 08 st %g1, [ %i5 + 8 ]
<== NOT EXECUTED
rtems_rfs_inode_unload (fs, &shared->inode, false);
4005314c: 94 10 20 00 clr %o2
<== NOT EXECUTED
40053150: c2 07 60 18 ld [ %i5 + 0x18 ], %g1
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
40053154: c8 08 60 0f ldub [ %g1 + 0xf ], %g4
<== NOT EXECUTED
40053158: f0 08 60 0c ldub [ %g1 + 0xc ], %i0
<== NOT EXECUTED
4005315c: c6 08 60 0d ldub [ %g1 + 0xd ], %g3
<== NOT EXECUTED
40053160: c4 08 60 0e ldub [ %g1 + 0xe ], %g2
<== NOT EXECUTED
40053164: b1 2e 20 18 sll %i0, 0x18, %i0
<== NOT EXECUTED
40053168: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
4005316c: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40053170: 86 10 c0 18 or %g3, %i0, %g3
<== NOT EXECUTED
40053174: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40053178: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
shared->size.count = rtems_rfs_inode_get_block_count (&shared->inode);
4005317c: c4 27 60 84 st %g2, [ %i5 + 0x84 ]
<== NOT EXECUTED
rtems_rfs_inode_unload (fs, &shared->inode, false);
40053180: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->block_offset);
40053184: c6 08 60 0b ldub [ %g1 + 0xb ], %g3
<== NOT EXECUTED
40053188: c4 08 60 0a ldub [ %g1 + 0xa ], %g2
<== NOT EXECUTED
4005318c: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
shared->size.offset = rtems_rfs_inode_get_block_offset (&shared->inode);
40053190: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40053194: c4 27 60 88 st %g2, [ %i5 + 0x88 ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->atime);
40053198: c8 08 60 13 ldub [ %g1 + 0x13 ], %g4
<== NOT EXECUTED
4005319c: f0 08 60 10 ldub [ %g1 + 0x10 ], %i0
<== NOT EXECUTED
400531a0: c6 08 60 11 ldub [ %g1 + 0x11 ], %g3
<== NOT EXECUTED
400531a4: c4 08 60 12 ldub [ %g1 + 0x12 ], %g2
<== NOT EXECUTED
400531a8: b1 2e 20 18 sll %i0, 0x18, %i0
<== NOT EXECUTED
400531ac: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
400531b0: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
400531b4: 86 10 c0 18 or %g3, %i0, %g3
<== NOT EXECUTED
400531b8: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
400531bc: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
shared->atime = rtems_rfs_inode_get_atime (&shared->inode);
400531c0: c4 27 60 8c st %g2, [ %i5 + 0x8c ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->mtime);
400531c4: c8 08 60 17 ldub [ %g1 + 0x17 ], %g4
<== NOT EXECUTED
400531c8: f0 08 60 14 ldub [ %g1 + 0x14 ], %i0
<== NOT EXECUTED
400531cc: c6 08 60 15 ldub [ %g1 + 0x15 ], %g3
<== NOT EXECUTED
400531d0: c4 08 60 16 ldub [ %g1 + 0x16 ], %g2
<== NOT EXECUTED
400531d4: b1 2e 20 18 sll %i0, 0x18, %i0
<== NOT EXECUTED
400531d8: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
400531dc: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
400531e0: 86 10 c0 18 or %g3, %i0, %g3
<== NOT EXECUTED
400531e4: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
400531e8: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
shared->mtime = rtems_rfs_inode_get_mtime (&shared->inode);
400531ec: c4 27 60 90 st %g2, [ %i5 + 0x90 ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->ctime);
400531f0: c8 08 60 1b ldub [ %g1 + 0x1b ], %g4
<== NOT EXECUTED
400531f4: f0 08 60 18 ldub [ %g1 + 0x18 ], %i0
<== NOT EXECUTED
400531f8: c6 08 60 19 ldub [ %g1 + 0x19 ], %g3
<== NOT EXECUTED
400531fc: c4 08 60 1a ldub [ %g1 + 0x1a ], %g2
<== NOT EXECUTED
old_last = tail->previous;
40053200: de 04 60 7c ld [ %l1 + 0x7c ], %o7
<== NOT EXECUTED
40053204: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40053208: 83 28 a0 08 sll %g2, 8, %g1
<== NOT EXECUTED
shared->fs = fs;
4005320c: e2 27 60 98 st %l1, [ %i5 + 0x98 ]
<== NOT EXECUTED
40053210: b1 2e 20 18 sll %i0, 0x18, %i0
<== NOT EXECUTED
the_node->next = tail;
40053214: e0 27 40 00 st %l0, [ %i5 ]
<== NOT EXECUTED
40053218: 84 10 c0 18 or %g3, %i0, %g2
<== NOT EXECUTED
tail->previous = the_node;
4005321c: fa 24 60 7c st %i5, [ %l1 + 0x7c ]
<== NOT EXECUTED
40053220: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
40053224: 82 11 00 01 or %g4, %g1, %g1
<== NOT EXECUTED
shared->ctime = rtems_rfs_inode_get_ctime (&shared->inode);
40053228: c2 27 60 94 st %g1, [ %i5 + 0x94 ]
<== NOT EXECUTED
old_last->next = the_node;
4005322c: fa 23 c0 00 st %i5, [ %o7 ]
<== NOT EXECUTED
the_node->previous = old_last;
40053230: de 27 60 04 st %o7, [ %i5 + 4 ]
<== NOT EXECUTED
rtems_rfs_inode_unload (fs, &shared->inode, false);
40053234: 40 00 0c 14 call 40056284 <rtems_rfs_inode_unload>
<== NOT EXECUTED
40053238: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_OPEN))
4005323c: 90 10 20 08 mov 8, %o0
<== NOT EXECUTED
40053240: 40 00 13 58 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053244: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053248: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005324c: 22 bf ff 71 be,a 40053010 <rtems_rfs_file_open+0xac>
<== NOT EXECUTED
40053250: f4 27 00 00 st %i2, [ %i4 ]
<== NOT EXECUTED
printf ("rtems-rfs: file-open: ino=%" PRId32 " share created\n", ino);
40053254: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40053258: 11 10 02 1b sethi %hi(0x40086c00), %o0
<== NOT EXECUTED
4005325c: 7f ff a2 bb call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053260: 90 12 23 28 or %o0, 0x328, %o0 ! 40086f28 <MSDOS_DOT_NAME+0xe00>
<== NOT EXECUTED
handle->flags = oflag;
40053264: 10 bf ff 6b b 40053010 <rtems_rfs_file_open+0xac>
<== NOT EXECUTED
40053268: f4 27 00 00 st %i2, [ %i4 ]
<== NOT EXECUTED
4005326c: 92 10 00 12 mov %l2, %o1
<== NOT EXECUTED
40053270: 7f ff f9 0d call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40053274: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
return ENOMEM;
40053278: b0 10 20 0c mov 0xc, %i0
<== NOT EXECUTED
free (handle);
4005327c: 7f fe e1 01 call 4000b680 <free>
<== NOT EXECUTED
40053280: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
return ENOMEM;
40053284: 81 c7 e0 08 ret
<== NOT EXECUTED
40053288: 81 e8 00 00 restore
<== NOT EXECUTED
40053b3c <rtems_rfs_file_seek>:
{
40053b3c: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
40053b40: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
40053b44: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053b48: 40 00 11 16 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053b4c: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
40053b50: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053b54: 32 80 00 35 bne,a 40053c28 <rtems_rfs_file_seek+0xec>
<== NOT EXECUTED
40053b58: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
if (pos <= rtems_rfs_file_shared_get_size (rtems_rfs_file_fs (handle),
40053b5c: d2 07 60 1c ld [ %i5 + 0x1c ], %o1
<== NOT EXECUTED
40053b60: d0 02 60 98 ld [ %o1 + 0x98 ], %o0
<== NOT EXECUTED
40053b64: 7f ff f1 dc call 400502d4 <rtems_rfs_block_get_size>
<== NOT EXECUTED
40053b68: 92 02 60 84 add %o1, 0x84, %o1
<== NOT EXECUTED
40053b6c: 80 a6 40 08 cmp %i1, %o0
<== NOT EXECUTED
40053b70: 08 80 00 0f bleu 40053bac <rtems_rfs_file_seek+0x70>
<== NOT EXECUTED
40053b74: 01 00 00 00 nop
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (&handle->buffer))
40053b78: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
40053b7c: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40053b80: 22 80 00 27 be,a 40053c1c <rtems_rfs_file_seek+0xe0>
<== NOT EXECUTED
40053b84: f2 26 c0 00 st %i1, [ %i3 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),
40053b88: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
40053b8c: d0 00 60 98 ld [ %g1 + 0x98 ], %o0
<== NOT EXECUTED
40053b90: 7f ff f6 c5 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40053b94: 92 07 60 04 add %i5, 4, %o1
<== NOT EXECUTED
if (rc > 0)
40053b98: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40053b9c: 24 80 00 20 ble,a 40053c1c <rtems_rfs_file_seek+0xe0>
<== NOT EXECUTED
40053ba0: f2 26 c0 00 st %i1, [ %i3 ]
<== NOT EXECUTED
}
40053ba4: 81 c7 e0 08 ret
<== NOT EXECUTED
40053ba8: 81 e8 00 00 restore
<== NOT EXECUTED
if (pos <= rtems_rfs_file_shared_get_size (rtems_rfs_file_fs (handle),
40053bac: 12 80 00 04 bne 40053bbc <rtems_rfs_file_seek+0x80>
<== NOT EXECUTED
40053bb0: 80 a6 80 09 cmp %i2, %o1
<== NOT EXECUTED
40053bb4: 38 bf ff f2 bgu,a 40053b7c <rtems_rfs_file_seek+0x40>
<== NOT EXECUTED
40053bb8: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
rtems_rfs_file_set_bpos (handle, pos);
40053bbc: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
40053bc0: d0 00 60 98 ld [ %g1 + 0x98 ], %o0
<== NOT EXECUTED
40053bc4: b8 07 60 10 add %i5, 0x10, %i4
<== NOT EXECUTED
40053bc8: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40053bcc: 96 10 00 1c mov %i4, %o3
<== NOT EXECUTED
40053bd0: 7f ff f1 aa call 40050278 <rtems_rfs_block_get_bpos>
<== NOT EXECUTED
40053bd4: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
if (rtems_rfs_buffer_handle_has_block (&handle->buffer))
40053bd8: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
40053bdc: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40053be0: 02 80 00 0e be 40053c18 <rtems_rfs_file_seek+0xdc>
<== NOT EXECUTED
40053be4: 96 07 bf fc add %fp, -4, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),
40053be8: d2 07 60 1c ld [ %i5 + 0x1c ], %o1
<== NOT EXECUTED
40053bec: d0 02 60 98 ld [ %o1 + 0x98 ], %o0
<== NOT EXECUTED
40053bf0: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
40053bf4: 7f ff f2 9d call 40050668 <rtems_rfs_block_map_find>
<== NOT EXECUTED
40053bf8: 92 02 60 34 add %o1, 0x34, %o1
<== NOT EXECUTED
if (rc > 0)
40053bfc: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40053c00: 14 bf ff e9 bg 40053ba4 <rtems_rfs_file_seek+0x68>
<== NOT EXECUTED
40053c04: c2 07 bf fc ld [ %fp + -4 ], %g1
<== NOT EXECUTED
if (rtems_rfs_buffer_bnum (&handle->buffer) != block)
40053c08: c4 07 60 08 ld [ %i5 + 8 ], %g2
<== NOT EXECUTED
40053c0c: 80 a0 80 01 cmp %g2, %g1
<== NOT EXECUTED
40053c10: 32 bf ff df bne,a 40053b8c <rtems_rfs_file_seek+0x50>
<== NOT EXECUTED
40053c14: c2 07 60 1c ld [ %i5 + 0x1c ], %g1
<== NOT EXECUTED
*new_pos = pos;
40053c18: f2 26 c0 00 st %i1, [ %i3 ]
<== NOT EXECUTED
40053c1c: f4 26 e0 04 st %i2, [ %i3 + 4 ]
<== NOT EXECUTED
}
40053c20: 81 c7 e0 08 ret
<== NOT EXECUTED
40053c24: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
printf ("rtems-rfs: file-seek: new=%" PRIu64 "\n", pos);
40053c28: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40053c2c: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40053c30: 7f ff a0 46 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053c34: 90 12 21 88 or %o0, 0x188, %o0 ! 40087188 <MSDOS_DOT_NAME+0x1060>
<== NOT EXECUTED
if (pos <= rtems_rfs_file_shared_get_size (rtems_rfs_file_fs (handle),
40053c38: 10 bf ff ca b 40053b60 <rtems_rfs_file_seek+0x24>
<== NOT EXECUTED
40053c3c: d2 07 60 1c ld [ %i5 + 0x1c ], %o1
<== NOT EXECUTED
40053c40 <rtems_rfs_file_set_size>:
{
40053c40: 9d e3 bf 90 save %sp, -112, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
40053c44: 90 10 20 20 mov 0x20, %o0
<== NOT EXECUTED
40053c48: 92 10 20 00 clr %o1
<== NOT EXECUTED
rtems_rfs_block_map* map = rtems_rfs_file_map (handle);
40053c4c: f8 06 20 1c ld [ %i0 + 0x1c ], %i4
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_FILE_IO))
40053c50: 40 00 10 d4 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053c54: a4 10 00 19 mov %i1, %l2
<== NOT EXECUTED
40053c58: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053c5c: 12 80 00 54 bne 40053dac <rtems_rfs_file_set_size+0x16c>
<== NOT EXECUTED
40053c60: a6 10 00 1a mov %i2, %l3
<== NOT EXECUTED
size = rtems_rfs_file_size (handle);
40053c64: d2 06 20 1c ld [ %i0 + 0x1c ], %o1
<== NOT EXECUTED
40053c68: d0 02 60 98 ld [ %o1 + 0x98 ], %o0
<== NOT EXECUTED
40053c6c: 7f ff f1 9a call 400502d4 <rtems_rfs_block_get_size>
<== NOT EXECUTED
40053c70: 92 02 60 84 add %o1, 0x84, %o1
<== NOT EXECUTED
if (size != new_size)
40053c74: 80 a4 80 08 cmp %l2, %o0
<== NOT EXECUTED
40053c78: 02 80 00 41 be 40053d7c <rtems_rfs_file_set_size+0x13c>
<== NOT EXECUTED
40053c7c: 80 a4 c0 09 cmp %l3, %o1
<== NOT EXECUTED
40053c80: f6 06 20 1c ld [ %i0 + 0x1c ], %i3
<== NOT EXECUTED
rtems_rfs_block_map* map = rtems_rfs_file_map (handle);
40053c84: a2 07 20 34 add %i4, 0x34, %l1
<== NOT EXECUTED
if (new_size == 0)
40053c88: 80 94 80 13 orcc %l2, %l3, %g0
<== NOT EXECUTED
40053c8c: 02 80 00 33 be 40053d58 <rtems_rfs_file_set_size+0x118>
<== NOT EXECUTED
40053c90: e8 06 e0 98 ld [ %i3 + 0x98 ], %l4
<== NOT EXECUTED
40053c94: fa 07 20 3c ld [ %i4 + 0x3c ], %i5
<== NOT EXECUTED
if (size < new_size)
40053c98: 80 a4 80 08 cmp %l2, %o0
<== NOT EXECUTED
40053c9c: 18 80 00 4d bgu 40053dd0 <rtems_rfs_file_set_size+0x190>
<== NOT EXECUTED
40053ca0: e0 05 20 08 ld [ %l4 + 8 ], %l0
<== NOT EXECUTED
40053ca4: 02 80 00 49 be 40053dc8 <rtems_rfs_file_set_size+0x188>
<== NOT EXECUTED
40053ca8: 80 a4 c0 09 cmp %l3, %o1
<== NOT EXECUTED
(((new_size - 1) /
40053cac: 92 84 ff ff addcc %l3, -1, %o1
<== NOT EXECUTED
40053cb0: 94 10 20 00 clr %o2
<== NOT EXECUTED
40053cb4: 90 44 bf ff addx %l2, -1, %o0
<== NOT EXECUTED
40053cb8: 40 00 98 c6 call 40079fd0 <__udivdi3>
<== NOT EXECUTED
40053cbc: 96 10 00 10 mov %l0, %o3
<== NOT EXECUTED
blocks =
40053cc0: b4 07 7f ff add %i5, -1, %i2
<== NOT EXECUTED
new_size % rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));
40053cc4: 94 10 20 00 clr %o2
<== NOT EXECUTED
blocks =
40053cc8: b4 26 80 09 sub %i2, %o1, %i2
<== NOT EXECUTED
new_size % rtems_rfs_fs_block_size (rtems_rfs_file_fs (handle));
40053ccc: 96 10 00 10 mov %l0, %o3
<== NOT EXECUTED
40053cd0: 90 10 00 12 mov %l2, %o0
<== NOT EXECUTED
40053cd4: 40 00 99 38 call 4007a1b4 <__umoddi3>
<== NOT EXECUTED
40053cd8: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
if (blocks)
40053cdc: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40053ce0: 12 80 00 89 bne 40053f04 <rtems_rfs_file_set_size+0x2c4>
<== NOT EXECUTED
40053ce4: b2 10 00 09 mov %o1, %i1
<== NOT EXECUTED
map->size.offset = offset;
40053ce8: f2 27 20 40 st %i1, [ %i4 + 0x40 ]
<== NOT EXECUTED
map->dirty = true;
40053cec: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40053cf0: c2 2f 20 34 stb %g1, [ %i4 + 0x34 ]
<== NOT EXECUTED
if (rtems_rfs_block_pos_past_end (rtems_rfs_file_bpos (handle),
40053cf4: c2 06 20 10 ld [ %i0 + 0x10 ], %g1
<== NOT EXECUTED
40053cf8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40053cfc: 02 80 00 8c be 40053f2c <rtems_rfs_file_set_size+0x2ec>
<== NOT EXECUTED
40053d00: 80 a0 40 1d cmp %g1, %i5
<== NOT EXECUTED
40053d04: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
40053d08: 12 80 00 89 bne 40053f2c <rtems_rfs_file_set_size+0x2ec>
<== NOT EXECUTED
40053d0c: 80 a0 40 1d cmp %g1, %i5
<== NOT EXECUTED
rtems_rfs_block_size_get_bpos (rtems_rfs_block_map_size (map),
40053d10: fa 26 20 10 st %i5, [ %i0 + 0x10 ]
<== NOT EXECUTED
40053d14: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40053d18: f2 26 20 14 st %i1, [ %i0 + 0x14 ]
<== NOT EXECUTED
40053d1c: 02 80 00 04 be 40053d2c <rtems_rfs_file_set_size+0xec>
<== NOT EXECUTED
40053d20: c0 26 20 18 clr [ %i0 + 0x18 ]
<== NOT EXECUTED
40053d24: 82 07 7f ff add %i5, -1, %g1
<== NOT EXECUTED
40053d28: c2 26 20 10 st %g1, [ %i0 + 0x10 ]
<== NOT EXECUTED
40053d2c: 84 10 00 1b mov %i3, %g2
<== NOT EXECUTED
handle->shared->size.offset = rtems_rfs_block_map_size_offset (map);
40053d30: c2 07 20 40 ld [ %i4 + 0x40 ], %g1
<== NOT EXECUTED
40053d34: c2 20 a0 88 st %g1, [ %g2 + 0x88 ]
<== NOT EXECUTED
handle->shared->size.count = rtems_rfs_block_map_count (map);
40053d38: fa 20 a0 84 st %i5, [ %g2 + 0x84 ]
<== NOT EXECUTED
if (rtems_rfs_file_update_mtime (handle))
40053d3c: fa 06 00 00 ld [ %i0 ], %i5
<== NOT EXECUTED
40053d40: ba 8f 60 02 andcc %i5, 2, %i5
<== NOT EXECUTED
40053d44: 02 80 00 14 be 40053d94 <rtems_rfs_file_set_size+0x154>
<== NOT EXECUTED
40053d48: 01 00 00 00 nop
<== NOT EXECUTED
return 0;
40053d4c: ba 10 20 00 clr %i5 ! 0 <PROM_START>
<== NOT EXECUTED
}
40053d50: 81 c7 e0 08 ret
<== NOT EXECUTED
40053d54: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_free_all (rtems_rfs_file_fs (handle), map);
40053d58: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
40053d5c: 7f ff f4 89 call 40050f80 <rtems_rfs_block_map_free_all>
<== NOT EXECUTED
40053d60: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
if (rc > 0)
40053d64: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40053d68: 14 bf ff fa bg 40053d50 <rtems_rfs_file_set_size+0x110>
<== NOT EXECUTED
40053d6c: 01 00 00 00 nop
<== NOT EXECUTED
40053d70: fa 07 20 3c ld [ %i4 + 0x3c ], %i5
<== NOT EXECUTED
40053d74: 10 bf ff ef b 40053d30 <rtems_rfs_file_set_size+0xf0>
<== NOT EXECUTED
40053d78: c4 06 20 1c ld [ %i0 + 0x1c ], %g2
<== NOT EXECUTED
if (size != new_size)
40053d7c: 32 bf ff c2 bne,a 40053c84 <rtems_rfs_file_set_size+0x44>
<== NOT EXECUTED
40053d80: f6 06 20 1c ld [ %i0 + 0x1c ], %i3
<== NOT EXECUTED
if (rtems_rfs_file_update_mtime (handle))
40053d84: fa 06 00 00 ld [ %i0 ], %i5
<== NOT EXECUTED
40053d88: ba 8f 60 02 andcc %i5, 2, %i5
<== NOT EXECUTED
40053d8c: 32 bf ff f1 bne,a 40053d50 <rtems_rfs_file_set_size+0x110>
<== NOT EXECUTED
40053d90: ba 10 20 00 clr %i5
<== NOT EXECUTED
handle->shared->mtime = time (NULL);
40053d94: 40 00 5f 30 call 4006ba54 <time>
<== NOT EXECUTED
40053d98: 90 10 20 00 clr %o0
<== NOT EXECUTED
40053d9c: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
40053da0: d2 20 60 90 st %o1, [ %g1 + 0x90 ]
<== NOT EXECUTED
}
40053da4: 81 c7 e0 08 ret
<== NOT EXECUTED
40053da8: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
printf ("rtems-rfs: file-set-size: size=%" PRIu64 "\n", new_size);
40053dac: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40053db0: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40053db4: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40053db8: 7f ff 9f e4 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40053dbc: 90 12 21 a8 or %o0, 0x1a8, %o0 ! 400871a8 <MSDOS_DOT_NAME+0x1080>
<== NOT EXECUTED
size = rtems_rfs_file_size (handle);
40053dc0: 10 bf ff aa b 40053c68 <rtems_rfs_file_set_size+0x28>
<== NOT EXECUTED
40053dc4: d2 06 20 1c ld [ %i0 + 0x1c ], %o1
<== NOT EXECUTED
if (size < new_size)
40053dc8: 28 bf ff ba bleu,a 40053cb0 <rtems_rfs_file_set_size+0x70>
<== NOT EXECUTED
40053dcc: 92 84 ff ff addcc %l3, -1, %o1
<== NOT EXECUTED
count = new_size - size;
40053dd0: b6 a4 c0 09 subcc %l3, %o1, %i3
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (rtems_rfs_file_fs (handle),
40053dd4: b2 06 20 04 add %i0, 4, %i1
<== NOT EXECUTED
count = new_size - size;
40053dd8: b4 64 80 08 subx %l2, %o0, %i2
<== NOT EXECUTED
read_block = false;
40053ddc: a6 10 20 00 clr %l3
<== NOT EXECUTED
40053de0: 10 80 00 28 b 40053e80 <rtems_rfs_file_set_size+0x240>
<== NOT EXECUTED
40053de4: a4 10 20 01 mov 1, %l2
<== NOT EXECUTED
if (count < (length - bpos.boff))
40053de8: 80 a0 80 1b cmp %g2, %i3
<== NOT EXECUTED
40053dec: 28 80 00 44 bleu,a 40053efc <rtems_rfs_file_set_size+0x2bc>
<== NOT EXECUTED
40053df0: c0 27 20 40 clr [ %i4 + 0x40 ]
<== NOT EXECUTED
length = count + bpos.boff;
40053df4: a0 00 40 1b add %g1, %i3, %l0
<== NOT EXECUTED
40053df8: e4 2f 20 34 stb %l2, [ %i4 + 0x34 ]
<== NOT EXECUTED
read_block = true;
40053dfc: a6 10 20 01 mov 1, %l3
<== NOT EXECUTED
map->size.offset = offset;
40053e00: e0 27 20 40 st %l0, [ %i4 + 0x40 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (rtems_rfs_file_fs (handle),
40053e04: 96 0c e0 01 and %l3, 1, %o3
<== NOT EXECUTED
40053e08: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
40053e0c: d4 07 bf f0 ld [ %fp + -16 ], %o2
<== NOT EXECUTED
40053e10: d0 00 60 98 ld [ %g1 + 0x98 ], %o0
<== NOT EXECUTED
40053e14: 7f ff f5 5d call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40053e18: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
if (rc > 0)
40053e1c: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40053e20: 14 bf ff cc bg 40053d50 <rtems_rfs_file_set_size+0x110>
<== NOT EXECUTED
40053e24: c2 07 bf f8 ld [ %fp + -8 ], %g1
<== NOT EXECUTED
dst = rtems_rfs_buffer_data (&handle->buffer);
40053e28: c4 06 20 0c ld [ %i0 + 0xc ], %g2
<== NOT EXECUTED
memset (dst + bpos.boff, 0, length - bpos.boff);
40053e2c: d0 00 a0 1c ld [ %g2 + 0x1c ], %o0
<== NOT EXECUTED
40053e30: 94 24 00 01 sub %l0, %g1, %o2
<== NOT EXECUTED
40053e34: 92 10 20 00 clr %o1
<== NOT EXECUTED
40053e38: 40 00 34 f0 call 400611f8 <memset>
<== NOT EXECUTED
40053e3c: 90 02 00 01 add %o0, %g1, %o0
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),
40053e40: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (rtems_rfs_file_buffer (handle));
40053e44: e4 2e 20 04 stb %l2, [ %i0 + 4 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (rtems_rfs_file_fs (handle),
40053e48: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40053e4c: 7f ff f6 16 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40053e50: d0 00 60 98 ld [ %g1 + 0x98 ], %o0
<== NOT EXECUTED
if (rc > 0)
40053e54: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40053e58: 14 bf ff be bg 40053d50 <rtems_rfs_file_set_size+0x110>
<== NOT EXECUTED
40053e5c: c2 07 bf f8 ld [ %fp + -8 ], %g1
<== NOT EXECUTED
count -= length - bpos.boff;
40053e60: 82 24 00 01 sub %l0, %g1, %g1
<== NOT EXECUTED
40053e64: c4 06 20 1c ld [ %i0 + 0x1c ], %g2
<== NOT EXECUTED
40053e68: b6 a6 c0 01 subcc %i3, %g1, %i3
<== NOT EXECUTED
40053e6c: b4 66 a0 00 subx %i2, 0, %i2
<== NOT EXECUTED
while (count)
40053e70: 80 96 80 1b orcc %i2, %i3, %g0
<== NOT EXECUTED
40053e74: 02 bf ff af be 40053d30 <rtems_rfs_file_set_size+0xf0>
<== NOT EXECUTED
40053e78: fa 07 20 3c ld [ %i4 + 0x3c ], %i5
<== NOT EXECUTED
40053e7c: e8 00 a0 98 ld [ %g2 + 0x98 ], %l4
<== NOT EXECUTED
rtems_rfs_block_size_get_bpos (rtems_rfs_block_map_size (map), &bpos);
40053e80: c2 07 20 40 ld [ %i4 + 0x40 ], %g1
<== NOT EXECUTED
40053e84: fa 27 bf f4 st %i5, [ %fp + -12 ]
<== NOT EXECUTED
40053e88: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40053e8c: c2 27 bf f8 st %g1, [ %fp + -8 ]
<== NOT EXECUTED
40053e90: 02 80 00 04 be 40053ea0 <rtems_rfs_file_set_size+0x260>
<== NOT EXECUTED
40053e94: c0 27 bf fc clr [ %fp + -4 ]
<== NOT EXECUTED
40053e98: ba 07 7f ff add %i5, -1, %i5
<== NOT EXECUTED
40053e9c: fa 27 bf f4 st %i5, [ %fp + -12 ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_find (rtems_rfs_file_fs (handle),
40053ea0: 96 07 bf f0 add %fp, -16, %o3
<== NOT EXECUTED
40053ea4: 94 07 bf f4 add %fp, -12, %o2
<== NOT EXECUTED
40053ea8: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
40053eac: 7f ff f1 ef call 40050668 <rtems_rfs_block_map_find>
<== NOT EXECUTED
40053eb0: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
if (rc > 0)
40053eb4: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40053eb8: 04 80 00 0c ble 40053ee8 <rtems_rfs_file_set_size+0x2a8>
<== NOT EXECUTED
40053ebc: 80 a7 60 06 cmp %i5, 6
<== NOT EXECUTED
if (rc != ENXIO)
40053ec0: 12 bf ff a4 bne 40053d50 <rtems_rfs_file_set_size+0x110>
<== NOT EXECUTED
40053ec4: 96 07 bf f0 add %fp, -16, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_grow (rtems_rfs_file_fs (handle),
40053ec8: c2 06 20 1c ld [ %i0 + 0x1c ], %g1
<== NOT EXECUTED
40053ecc: d0 00 60 98 ld [ %g1 + 0x98 ], %o0
<== NOT EXECUTED
40053ed0: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40053ed4: 7f ff f2 69 call 40050878 <rtems_rfs_block_map_grow>
<== NOT EXECUTED
40053ed8: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
if (rc > 0)
40053edc: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40053ee0: 14 bf ff 9c bg 40053d50 <rtems_rfs_file_set_size+0x110>
<== NOT EXECUTED
40053ee4: 01 00 00 00 nop
<== NOT EXECUTED
if (count < (length - bpos.boff))
40053ee8: c2 07 bf f8 ld [ %fp + -8 ], %g1
<== NOT EXECUTED
40053eec: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40053ef0: 02 bf ff be be 40053de8 <rtems_rfs_file_set_size+0x1a8>
<== NOT EXECUTED
40053ef4: 84 24 00 01 sub %l0, %g1, %g2
<== NOT EXECUTED
40053ef8: c0 27 20 40 clr [ %i4 + 0x40 ]
<== NOT EXECUTED
map->dirty = true;
40053efc: 10 bf ff c2 b 40053e04 <rtems_rfs_file_set_size+0x1c4>
<== NOT EXECUTED
40053f00: e4 2f 20 34 stb %l2, [ %i4 + 0x34 ]
<== NOT EXECUTED
rc = rtems_rfs_block_map_shrink (rtems_rfs_file_fs (handle),
40053f04: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40053f08: 92 06 e0 34 add %i3, 0x34, %o1
<== NOT EXECUTED
40053f0c: 7f ff f3 58 call 40050c6c <rtems_rfs_block_map_shrink>
<== NOT EXECUTED
40053f10: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
if (rc > 0)
40053f14: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40053f18: 14 bf ff 8e bg 40053d50 <rtems_rfs_file_set_size+0x110>
<== NOT EXECUTED
40053f1c: 01 00 00 00 nop
<== NOT EXECUTED
40053f20: fa 07 20 3c ld [ %i4 + 0x3c ], %i5
<== NOT EXECUTED
40053f24: 10 bf ff 71 b 40053ce8 <rtems_rfs_file_set_size+0xa8>
<== NOT EXECUTED
40053f28: f6 06 20 1c ld [ %i0 + 0x1c ], %i3
<== NOT EXECUTED
if (rtems_rfs_block_pos_past_end (rtems_rfs_file_bpos (handle),
40053f2c: 3a bf ff 7a bcc,a 40053d14 <rtems_rfs_file_set_size+0xd4>
<== NOT EXECUTED
40053f30: fa 26 20 10 st %i5, [ %i0 + 0x10 ]
<== NOT EXECUTED
40053f34: 84 07 7f ff add %i5, -1, %g2
<== NOT EXECUTED
40053f38: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40053f3c: 32 bf ff 7d bne,a 40053d30 <rtems_rfs_file_set_size+0xf0>
<== NOT EXECUTED
40053f40: 84 10 00 1b mov %i3, %g2
<== NOT EXECUTED
40053f44: c2 06 20 14 ld [ %i0 + 0x14 ], %g1
<== NOT EXECUTED
40053f48: 80 a0 40 19 cmp %g1, %i1
<== NOT EXECUTED
40053f4c: 38 bf ff 72 bgu,a 40053d14 <rtems_rfs_file_set_size+0xd4>
<== NOT EXECUTED
40053f50: fa 26 20 10 st %i5, [ %i0 + 0x10 ]
<== NOT EXECUTED
40053f54: 10 bf ff 77 b 40053d30 <rtems_rfs_file_set_size+0xf0>
<== NOT EXECUTED
40053f58: 84 10 00 1b mov %i3, %g2
<== NOT EXECUTED
40054898 <rtems_rfs_format>:
return 0;
}
int
rtems_rfs_format (const char* name, const rtems_rfs_format_config* config)
{
40054898: 9d e3 be d8 save %sp, -296, %sp
<== NOT EXECUTED
rtems_rfs_file_system fs;
int group;
int rc;
if (config->verbose)
4005489c: c2 0e 60 15 ldub [ %i1 + 0x15 ], %g1
<== NOT EXECUTED
400548a0: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400548a4: 12 80 00 94 bne 40054af4 <rtems_rfs_format+0x25c>
<== NOT EXECUTED
400548a8: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
printf ("rtems-rfs: format: %s\n", name);
memset (&fs, 0, sizeof (rtems_rfs_file_system));
400548ac: 94 10 20 80 mov 0x80, %o2
<== NOT EXECUTED
400548b0: 92 10 20 00 clr %o1
<== NOT EXECUTED
400548b4: 40 00 32 51 call 400611f8 <memset>
<== NOT EXECUTED
400548b8: 90 07 bf 80 add %fp, -128, %o0
<== NOT EXECUTED
400548bc: 82 07 bf c4 add %fp, -60, %g1
<== NOT EXECUTED
400548c0: c2 27 bf c0 st %g1, [ %fp + -64 ]
<== NOT EXECUTED
tail->previous = head;
400548c4: 82 07 bf c0 add %fp, -64, %g1
<== NOT EXECUTED
400548c8: c2 27 bf c8 st %g1, [ %fp + -56 ]
<== NOT EXECUTED
head->next = tail;
400548cc: 82 07 bf d4 add %fp, -44, %g1
<== NOT EXECUTED
400548d0: c2 27 bf d0 st %g1, [ %fp + -48 ]
<== NOT EXECUTED
tail->previous = head;
400548d4: 82 07 bf d0 add %fp, -48, %g1
<== NOT EXECUTED
400548d8: c2 27 bf d8 st %g1, [ %fp + -40 ]
<== NOT EXECUTED
head->next = tail;
400548dc: 82 07 bf e4 add %fp, -28, %g1
<== NOT EXECUTED
400548e0: c2 27 bf e0 st %g1, [ %fp + -32 ]
<== NOT EXECUTED
tail->previous = head;
400548e4: 82 07 bf e0 add %fp, -32, %g1
<== NOT EXECUTED
400548e8: c2 27 bf e8 st %g1, [ %fp + -24 ]
<== NOT EXECUTED
head->next = tail;
400548ec: 82 07 bf f4 add %fp, -12, %g1
<== NOT EXECUTED
400548f0: c2 27 bf f0 st %g1, [ %fp + -16 ]
<== NOT EXECUTED
tail->previous = head;
400548f4: 82 07 bf f0 add %fp, -16, %g1
<== NOT EXECUTED
400548f8: c2 27 bf f8 st %g1, [ %fp + -8 ]
<== NOT EXECUTED
rtems_chain_initialize_empty (&fs.buffers);
rtems_chain_initialize_empty (&fs.release);
rtems_chain_initialize_empty (&fs.release_modified);
rtems_chain_initialize_empty (&fs.file_shares);
fs.max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;
400548fc: 82 10 20 05 mov 5, %g1
<== NOT EXECUTED
40054900: c2 27 bf bc st %g1, [ %fp + -68 ]
<== NOT EXECUTED
fs.release_count = 0;
fs.release_modified_count = 0;
fs.flags = RTEMS_RFS_FS_NO_LOCAL_CACHE;
40054904: 82 10 20 02 mov 2, %g1
<== NOT EXECUTED
/*
* Open the buffer interface.
*/
rc = rtems_rfs_buffer_open (name, &fs);
40054908: 92 07 bf 7c add %fp, -132, %o1
<== NOT EXECUTED
fs.flags = RTEMS_RFS_FS_NO_LOCAL_CACHE;
4005490c: c2 27 bf 7c st %g1, [ %fp + -132 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_open (name, &fs);
40054910: 7f ff f3 6e call 400516c8 <rtems_rfs_buffer_open>
<== NOT EXECUTED
40054914: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc != 0)
40054918: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
4005491c: 12 80 03 ac bne 400557cc <rtems_rfs_format+0xf34>
<== NOT EXECUTED
40054920: c2 07 bf 8c ld [ %fp + -116 ], %g1
<== NOT EXECUTED
}
/*
* Check the media.
*/
if (rtems_rfs_fs_media_block_size (&fs) == 0)
40054924: d4 00 60 20 ld [ %g1 + 0x20 ], %o2
<== NOT EXECUTED
40054928: 80 a2 a0 00 cmp %o2, 0
<== NOT EXECUTED
4005492c: 02 80 03 93 be 40055778 <rtems_rfs_format+0xee0>
<== NOT EXECUTED
40054930: 92 10 20 00 clr %o1
<== NOT EXECUTED
fs->block_size = config->block_size;
40054934: d2 06 40 00 ld [ %i1 ], %o1
<== NOT EXECUTED
if (!fs->block_size)
40054938: 80 a2 60 00 cmp %o1, 0
<== NOT EXECUTED
4005493c: 02 80 00 73 be 40054b08 <rtems_rfs_format+0x270>
<== NOT EXECUTED
40054940: d2 27 bf 84 st %o1, [ %fp + -124 ]
<== NOT EXECUTED
if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)
40054944: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40054948: 01 00 00 00 nop
<== NOT EXECUTED
4005494c: 01 00 00 00 nop
<== NOT EXECUTED
40054950: 01 00 00 00 nop
<== NOT EXECUTED
40054954: 82 72 40 0a udiv %o1, %o2, %g1
<== NOT EXECUTED
40054958: 82 58 40 0a smul %g1, %o2, %g1
<== NOT EXECUTED
4005495c: 80 a2 40 01 cmp %o1, %g1
<== NOT EXECUTED
40054960: 32 80 00 91 bne,a 40054ba4 <rtems_rfs_format+0x30c>
<== NOT EXECUTED
40054964: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
fs->group_blocks = config->group_blocks;
40054968: c2 06 60 04 ld [ %i1 + 4 ], %g1
<== NOT EXECUTED
4005496c: c2 27 bf a4 st %g1, [ %fp + -92 ]
<== NOT EXECUTED
if (!fs->group_blocks)
40054970: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40054974: 02 80 00 0d be 400549a8 <rtems_rfs_format+0x110>
<== NOT EXECUTED
40054978: 93 2a 60 03 sll %o1, 3, %o1
<== NOT EXECUTED
if (fs->group_blocks > rtems_rfs_bitmap_numof_bits (fs->block_size))
4005497c: 80 a0 40 09 cmp %g1, %o1
<== NOT EXECUTED
40054980: 08 80 00 0b bleu 400549ac <rtems_rfs_format+0x114>
<== NOT EXECUTED
40054984: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
printf ("group block count is higher than bits in block\n");
40054988: 7f ff 9c ff call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4005498c: 90 12 21 d8 or %o0, 0x1d8, %o0 ! 400875d8 <MSDOS_DOT_NAME+0x14b0>
<== NOT EXECUTED
/*
* Check the configuration data.
*/
if (!rtems_rfs_check_config (&fs, config))
{
errno = EINVAL;
40054990: 40 00 1f e1 call 4005c914 <__errno>
<== NOT EXECUTED
40054994: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
40054998: 82 10 20 16 mov 0x16, %g1
<== NOT EXECUTED
4005499c: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
400549a0: 81 c7 e0 08 ret
<== NOT EXECUTED
400549a4: 81 e8 00 00 restore
<== NOT EXECUTED
fs->group_blocks = rtems_rfs_bitmap_numof_bits (fs->block_size);
400549a8: d2 27 bf a4 st %o1, [ %fp + -92 ]
<== NOT EXECUTED
fs->blocks = rtems_rfs_fs_media_size (fs) / fs->block_size;
400549ac: 7f ff fd 88 call 40053fcc <rtems_rfs_fs_media_size>
<== NOT EXECUTED
400549b0: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
400549b4: fa 07 bf 84 ld [ %fp + -124 ], %i5
<== NOT EXECUTED
400549b8: 94 10 20 00 clr %o2
<== NOT EXECUTED
400549bc: 40 00 95 85 call 40079fd0 <__udivdi3>
<== NOT EXECUTED
400549c0: 96 10 00 1d mov %i5, %o3
<== NOT EXECUTED
400549c4: d2 27 bf 80 st %o1, [ %fp + -128 ]
<== NOT EXECUTED
return rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs));
400549c8: b9 2f 60 03 sll %i5, 3, %i4
<== NOT EXECUTED
if (dividend == 0)
400549cc: 80 a2 60 00 cmp %o1, 0
<== NOT EXECUTED
400549d0: 12 80 01 06 bne 40054de8 <rtems_rfs_format+0x550>
<== NOT EXECUTED
400549d4: 88 10 20 01 mov 1, %g4
<== NOT EXECUTED
fs->group_count = rtems_rfs_rup_quotient (rtems_rfs_fs_blocks (fs),
400549d8: c8 27 bf a0 st %g4, [ %fp + -96 ]
<== NOT EXECUTED
400549dc: 83 37 60 03 srl %i5, 3, %g1
<== NOT EXECUTED
fs->group_inodes = config->group_inodes;
400549e0: c6 06 60 08 ld [ %i1 + 8 ], %g3
<== NOT EXECUTED
400549e4: 05 09 24 92 sethi %hi(0x24924800), %g2
<== NOT EXECUTED
if (!fs->group_inodes)
400549e8: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
400549ec: 84 10 a1 25 or %g2, 0x125, %g2
<== NOT EXECUTED
400549f0: 80 50 40 02 umul %g1, %g2, %g0
<== NOT EXECUTED
400549f4: 83 40 00 00 rd %y, %g1
<== NOT EXECUTED
400549f8: 22 80 00 73 be,a 40054bc4 <rtems_rfs_format+0x32c>
<== NOT EXECUTED
400549fc: c6 06 60 0c ld [ %i1 + 0xc ], %g3
<== NOT EXECUTED
fs->inodes_per_block = rtems_rfs_fs_block_size (fs) / RTEMS_RFS_INODE_SIZE;
40054a00: c2 27 bf ac st %g1, [ %fp + -84 ]
<== NOT EXECUTED
return ((dividend - 1) / divisor) + 1;
40054a04: 86 00 ff ff add %g3, -1, %g3
<== NOT EXECUTED
40054a08: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40054a0c: 01 00 00 00 nop
<== NOT EXECUTED
40054a10: 01 00 00 00 nop
<== NOT EXECUTED
40054a14: 01 00 00 00 nop
<== NOT EXECUTED
40054a18: 84 70 c0 01 udiv %g3, %g1, %g2
<== NOT EXECUTED
40054a1c: 84 00 a0 01 inc %g2
<== NOT EXECUTED
40054a20: 82 58 40 02 smul %g1, %g2, %g1
<== NOT EXECUTED
if (fs->group_inodes > rtems_rfs_bitmap_numof_bits (fs->block_size))
40054a24: 80 a7 00 01 cmp %i4, %g1
<== NOT EXECUTED
40054a28: 2a 80 00 83 bcs,a 40054c34 <rtems_rfs_format+0x39c>
<== NOT EXECUTED
40054a2c: f8 27 bf a8 st %i4, [ %fp + -88 ]
<== NOT EXECUTED
fs->group_inodes =
40054a30: c2 27 bf a8 st %g1, [ %fp + -88 ]
<== NOT EXECUTED
fs->max_name_length = config->max_name_length;
40054a34: c2 06 60 10 ld [ %i1 + 0x10 ], %g1
<== NOT EXECUTED
if (!fs->max_name_length)
40054a38: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40054a3c: 32 80 00 83 bne,a 40054c48 <rtems_rfs_format+0x3b0>
<== NOT EXECUTED
40054a40: c2 27 bf 98 st %g1, [ %fp + -104 ]
<== NOT EXECUTED
fs->max_name_length = 512;
40054a44: 82 10 22 00 mov 0x200, %g1
<== NOT EXECUTED
40054a48: c2 27 bf 98 st %g1, [ %fp + -104 ]
<== NOT EXECUTED
}
if (config->verbose)
40054a4c: c2 0e 60 15 ldub [ %i1 + 0x15 ], %g1
<== NOT EXECUTED
40054a50: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40054a54: 12 80 00 81 bne 40054c58 <rtems_rfs_format+0x3c0>
<== NOT EXECUTED
40054a58: 01 00 00 00 nop
<== NOT EXECUTED
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));
40054a5c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40054a60: 7f ff f3 cc call 40051990 <rtems_rfs_buffer_setblksize>
<== NOT EXECUTED
40054a64: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
if (rc != 0)
40054a68: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40054a6c: 12 80 03 4c bne 4005579c <rtems_rfs_format+0xf04>
<== NOT EXECUTED
40054a70: 96 10 20 00 clr %o3
<== NOT EXECUTED
handle->dirty = false;
40054a74: c0 2f bf 54 clrb [ %fp + -172 ]
<== NOT EXECUTED
handle->bnum = 0;
40054a78: c0 27 bf 58 clr [ %fp + -168 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &handle, 0, false);
40054a7c: 94 10 20 00 clr %o2
<== NOT EXECUTED
handle->buffer = NULL;
40054a80: c0 27 bf 5c clr [ %fp + -164 ]
<== NOT EXECUTED
40054a84: 92 07 bf 54 add %fp, -172, %o1
<== NOT EXECUTED
40054a88: 7f ff f2 40 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40054a8c: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
if (rc > 0)
40054a90: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
40054a94: 04 80 00 f9 ble 40054e78 <rtems_rfs_format+0x5e0>
<== NOT EXECUTED
40054a98: 92 07 bf 54 add %fp, -172, %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40054a9c: 7f ff f3 02 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40054aa0: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("rtems-rfs: write-superblock: request failed: %d: %s\n",
40054aa4: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
handle->dirty = false;
40054aa8: c0 2f bf 54 clrb [ %fp + -172 ]
<== NOT EXECUTED
if (!rtems_rfs_write_superblock (&fs))
{
printf ("rtems-rfs: format: superblock write failed\n");
errno = EIO;
return -1;
40054aac: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
handle->bnum = 0;
40054ab0: c0 27 bf 58 clr [ %fp + -168 ]
<== NOT EXECUTED
printf ("rtems-rfs: write-superblock: request failed: %d: %s\n",
40054ab4: 40 00 3e bb call 400645a0 <strerror>
<== NOT EXECUTED
40054ab8: c0 27 bf 5c clr [ %fp + -164 ]
<== NOT EXECUTED
40054abc: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
40054ac0: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40054ac4: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40054ac8: 7f ff 9c a0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054acc: 90 12 20 20 or %o0, 0x20, %o0 ! 40087820 <MSDOS_DOT_NAME+0x16f8>
<== NOT EXECUTED
printf ("rtems-rfs: format: superblock write failed\n");
40054ad0: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40054ad4: 7f ff 9c ac call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
40054ad8: 90 12 20 98 or %o0, 0x98, %o0 ! 40087898 <MSDOS_DOT_NAME+0x1770>
<== NOT EXECUTED
errno = EIO;
40054adc: 40 00 1f 8e call 4005c914 <__errno>
<== NOT EXECUTED
40054ae0: 01 00 00 00 nop
<== NOT EXECUTED
40054ae4: 82 10 20 05 mov 5, %g1 ! 5 <_TLS_Alignment+0x4>
<== NOT EXECUTED
40054ae8: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
40054aec: 81 c7 e0 08 ret
<== NOT EXECUTED
40054af0: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: format: %s\n", name);
40054af4: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054af8: 7f ff 9c 94 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054afc: 90 12 21 28 or %o0, 0x128, %o0 ! 40087528 <MSDOS_DOT_NAME+0x1400>
<== NOT EXECUTED
memset (&fs, 0, sizeof (rtems_rfs_file_system));
40054b00: 10 bf ff 6c b 400548b0 <rtems_rfs_format+0x18>
<== NOT EXECUTED
40054b04: 94 10 20 80 mov 0x80, %o2
<== NOT EXECUTED
uint64_t total_size = rtems_rfs_fs_media_size (fs);
40054b08: 7f ff fd 31 call 40053fcc <rtems_rfs_fs_media_size>
<== NOT EXECUTED
40054b0c: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
if (total_size >= GIGS (1))
40054b10: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054b14: 22 80 00 c8 be,a 40054e34 <rtems_rfs_format+0x59c>
<== NOT EXECUTED
40054b18: 03 00 03 ff sethi %hi(0xffc00), %g1
<== NOT EXECUTED
uint32_t gigs = (total_size + GIGS (1)) / GIGS (1);
40054b1c: 84 10 20 00 clr %g2
<== NOT EXECUTED
40054b20: 07 00 04 00 sethi %hi(0x100000), %g3
<== NOT EXECUTED
for (b = 31; b > 0; b--)
40054b24: 82 10 20 1f mov 0x1f, %g1
<== NOT EXECUTED
uint32_t gigs = (total_size + GIGS (1)) / GIGS (1);
40054b28: ba 82 40 03 addcc %o1, %g3, %i5
<== NOT EXECUTED
if ((gigs & (1 << b)) != 0)
40054b2c: 86 10 20 01 mov 1, %g3
<== NOT EXECUTED
uint32_t gigs = (total_size + GIGS (1)) / GIGS (1);
40054b30: b8 42 00 02 addx %o0, %g2, %i4
<== NOT EXECUTED
40054b34: 89 37 60 14 srl %i5, 0x14, %g4
<== NOT EXECUTED
40054b38: 85 2f 20 0c sll %i4, 0xc, %g2
<== NOT EXECUTED
40054b3c: 10 80 00 04 b 40054b4c <rtems_rfs_format+0x2b4>
<== NOT EXECUTED
40054b40: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
for (b = 31; b > 0; b--)
40054b44: 02 80 00 06 be 40054b5c <rtems_rfs_format+0x2c4>
<== NOT EXECUTED
40054b48: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
if ((gigs & (1 << b)) != 0)
40054b4c: 93 28 c0 01 sll %g3, %g1, %o1
<== NOT EXECUTED
40054b50: 80 88 80 09 btst %g2, %o1
<== NOT EXECUTED
40054b54: 02 bf ff fc be 40054b44 <rtems_rfs_format+0x2ac>
<== NOT EXECUTED
40054b58: 82 80 7f ff addcc %g1, -1, %g1
<== NOT EXECUTED
if (fs->block_size < 512)
40054b5c: 80 a2 61 ff cmp %o1, 0x1ff
<== NOT EXECUTED
40054b60: 18 80 00 bd bgu 40054e54 <rtems_rfs_format+0x5bc>
<== NOT EXECUTED
40054b64: d2 27 bf 84 st %o1, [ %fp + -124 ]
<== NOT EXECUTED
40054b68: c2 07 bf 8c ld [ %fp + -116 ], %g1
<== NOT EXECUTED
40054b6c: d4 00 60 20 ld [ %g1 + 0x20 ], %o2
<== NOT EXECUTED
fs->block_size = 512;
40054b70: 82 10 22 00 mov 0x200, %g1
<== NOT EXECUTED
40054b74: c2 27 bf 84 st %g1, [ %fp + -124 ]
<== NOT EXECUTED
40054b78: 92 10 22 00 mov 0x200, %o1
<== NOT EXECUTED
if ((fs->block_size % rtems_rfs_fs_media_block_size (fs)) != 0)
40054b7c: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40054b80: 01 00 00 00 nop
<== NOT EXECUTED
40054b84: 01 00 00 00 nop
<== NOT EXECUTED
40054b88: 01 00 00 00 nop
<== NOT EXECUTED
40054b8c: 82 72 40 0a udiv %o1, %o2, %g1
<== NOT EXECUTED
40054b90: 82 58 40 0a smul %g1, %o2, %g1
<== NOT EXECUTED
40054b94: 80 a2 40 01 cmp %o1, %g1
<== NOT EXECUTED
40054b98: 22 bf ff 75 be,a 4005496c <rtems_rfs_format+0xd4>
<== NOT EXECUTED
40054b9c: c2 06 60 04 ld [ %i1 + 4 ], %g1
<== NOT EXECUTED
printf ("block size (%zd) is not a multiple of media block size (%" PRId32 ")\n",
40054ba0: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054ba4: 7f ff 9c 69 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054ba8: 90 12 21 98 or %o0, 0x198, %o0 ! 40087598 <MSDOS_DOT_NAME+0x1470>
<== NOT EXECUTED
errno = EINVAL;
40054bac: 40 00 1f 5a call 4005c914 <__errno>
<== NOT EXECUTED
40054bb0: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
40054bb4: 82 10 20 16 mov 0x16, %g1
<== NOT EXECUTED
40054bb8: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
40054bbc: 81 c7 e0 08 ret
<== NOT EXECUTED
40054bc0: 81 e8 00 00 restore
<== NOT EXECUTED
if (config->inode_overhead)
40054bc4: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
40054bc8: 22 80 00 02 be,a 40054bd0 <rtems_rfs_format+0x338>
<== NOT EXECUTED
40054bcc: 86 10 20 01 mov 1, %g3
<== NOT EXECUTED
blocks = ((rtems_rfs_fs_blocks (fs) -
40054bd0: 84 02 7f ff add %o1, -1, %g2
<== NOT EXECUTED
RTEMS_RFS_SUPERBLOCK_SIZE) * percentage) / 100;
40054bd4: 37 14 7a e1 sethi %hi(0x51eb8400), %i3
<== NOT EXECUTED
40054bd8: 84 58 80 03 smul %g2, %g3, %g2
<== NOT EXECUTED
40054bdc: b6 16 e1 1f or %i3, 0x11f, %i3
<== NOT EXECUTED
40054be0: 80 50 80 1b umul %g2, %i3, %g0
<== NOT EXECUTED
40054be4: 85 40 00 00 rd %y, %g2
<== NOT EXECUTED
40054be8: 85 30 a0 05 srl %g2, 5, %g2
<== NOT EXECUTED
if (dividend == 0)
40054bec: 80 a0 a0 00 cmp %g2, 0
<== NOT EXECUTED
40054bf0: 02 80 00 0a be 40054c18 <rtems_rfs_format+0x380>
<== NOT EXECUTED
40054bf4: 86 10 00 01 mov %g1, %g3
<== NOT EXECUTED
return ((dividend - 1) / divisor) + 1;
40054bf8: 84 00 bf ff add %g2, -1, %g2
<== NOT EXECUTED
40054bfc: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40054c00: 01 00 00 00 nop
<== NOT EXECUTED
40054c04: 01 00 00 00 nop
<== NOT EXECUTED
40054c08: 01 00 00 00 nop
<== NOT EXECUTED
40054c0c: 86 70 80 04 udiv %g2, %g4, %g3
<== NOT EXECUTED
40054c10: 86 00 e0 01 inc %g3
<== NOT EXECUTED
40054c14: 86 58 c0 01 smul %g3, %g1, %g3
<== NOT EXECUTED
if (dividend == 0)
40054c18: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
40054c1c: 12 bf ff 7a bne 40054a04 <rtems_rfs_format+0x16c>
<== NOT EXECUTED
40054c20: c2 27 bf ac st %g1, [ %fp + -84 ]
<== NOT EXECUTED
if (fs->group_inodes > rtems_rfs_bitmap_numof_bits (fs->block_size))
40054c24: 80 a7 00 01 cmp %i4, %g1
<== NOT EXECUTED
40054c28: 3a bf ff 83 bcc,a 40054a34 <rtems_rfs_format+0x19c>
<== NOT EXECUTED
40054c2c: c2 27 bf a8 st %g1, [ %fp + -88 ]
<== NOT EXECUTED
fs->group_inodes = rtems_rfs_bitmap_numof_bits (fs->block_size);
40054c30: f8 27 bf a8 st %i4, [ %fp + -88 ]
<== NOT EXECUTED
fs->max_name_length = config->max_name_length;
40054c34: c2 06 60 10 ld [ %i1 + 0x10 ], %g1
<== NOT EXECUTED
if (!fs->max_name_length)
40054c38: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40054c3c: 22 bf ff 83 be,a 40054a48 <rtems_rfs_format+0x1b0>
<== NOT EXECUTED
40054c40: 82 10 22 00 mov 0x200, %g1
<== NOT EXECUTED
fs->max_name_length = config->max_name_length;
40054c44: c2 27 bf 98 st %g1, [ %fp + -104 ]
<== NOT EXECUTED
if (config->verbose)
40054c48: c2 0e 60 15 ldub [ %i1 + 0x15 ], %g1
<== NOT EXECUTED
40054c4c: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40054c50: 02 bf ff 84 be 40054a60 <rtems_rfs_format+0x1c8>
<== NOT EXECUTED
40054c54: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
printf ("rtems-rfs: format: media size = %" PRIu64 "\n",
40054c58: 7f ff fc dd call 40053fcc <rtems_rfs_fs_media_size>
<== NOT EXECUTED
40054c5c: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
40054c60: 94 10 00 09 mov %o1, %o2
<== NOT EXECUTED
40054c64: 92 10 00 08 mov %o0, %o1
<== NOT EXECUTED
40054c68: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054c6c: 7f ff 9c 37 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054c70: 90 12 22 08 or %o0, 0x208, %o0 ! 40087608 <MSDOS_DOT_NAME+0x14e0>
<== NOT EXECUTED
printf ("rtems-rfs: format: media blocks = %" PRIu32 "\n",
40054c74: c2 07 bf 8c ld [ %fp + -116 ], %g1
<== NOT EXECUTED
40054c78: d2 00 60 1c ld [ %g1 + 0x1c ], %o1
<== NOT EXECUTED
40054c7c: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054c80: 7f ff 9c 32 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054c84: 90 12 22 30 or %o0, 0x230, %o0 ! 40087630 <MSDOS_DOT_NAME+0x1508>
<== NOT EXECUTED
printf ("rtems-rfs: format: media block size = %" PRIu32 "\n",
40054c88: c2 07 bf 8c ld [ %fp + -116 ], %g1
<== NOT EXECUTED
40054c8c: d2 00 60 20 ld [ %g1 + 0x20 ], %o1
<== NOT EXECUTED
40054c90: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054c94: 7f ff 9c 2d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054c98: 90 12 22 58 or %o0, 0x258, %o0 ! 40087658 <MSDOS_DOT_NAME+0x1530>
<== NOT EXECUTED
printf ("rtems-rfs: format: size = %" PRIu64 "\n",
40054c9c: 7f ff fc c6 call 40053fb4 <rtems_rfs_fs_size>
<== NOT EXECUTED
40054ca0: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
40054ca4: 94 10 00 09 mov %o1, %o2
<== NOT EXECUTED
40054ca8: 92 10 00 08 mov %o0, %o1
<== NOT EXECUTED
40054cac: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054cb0: 7f ff 9c 26 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054cb4: 90 12 22 88 or %o0, 0x288, %o0 ! 40087688 <MSDOS_DOT_NAME+0x1560>
<== NOT EXECUTED
printf ("rtems-rfs: format: blocks = %zu\n",
40054cb8: d2 07 bf 80 ld [ %fp + -128 ], %o1
<== NOT EXECUTED
40054cbc: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054cc0: 7f ff 9c 22 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054cc4: 90 12 22 a8 or %o0, 0x2a8, %o0 ! 400876a8 <MSDOS_DOT_NAME+0x1580>
<== NOT EXECUTED
printf ("rtems-rfs: format: block size = %zu\n",
40054cc8: d2 07 bf 84 ld [ %fp + -124 ], %o1
<== NOT EXECUTED
40054ccc: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054cd0: 7f ff 9c 1e call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054cd4: 90 12 22 d0 or %o0, 0x2d0, %o0 ! 400876d0 <MSDOS_DOT_NAME+0x15a8>
<== NOT EXECUTED
return rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs));
40054cd8: d2 07 bf 84 ld [ %fp + -124 ], %o1
<== NOT EXECUTED
printf ("rtems-rfs: format: bits per block = %u\n",
40054cdc: 93 2a 60 03 sll %o1, 3, %o1
<== NOT EXECUTED
40054ce0: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054ce4: 7f ff 9c 19 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054ce8: 90 12 22 f8 or %o0, 0x2f8, %o0 ! 400876f8 <MSDOS_DOT_NAME+0x15d0>
<== NOT EXECUTED
printf ("rtems-rfs: format: inode size = %zu\n", RTEMS_RFS_INODE_SIZE);
40054cec: 92 10 20 38 mov 0x38, %o1
<== NOT EXECUTED
40054cf0: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054cf4: 7f ff 9c 15 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054cf8: 90 12 23 20 or %o0, 0x320, %o0 ! 40087720 <MSDOS_DOT_NAME+0x15f8>
<== NOT EXECUTED
fs.group_inodes * fs.group_count,
40054cfc: c4 07 bf a8 ld [ %fp + -88 ], %g2
<== NOT EXECUTED
printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",
40054d00: d2 07 bf a0 ld [ %fp + -96 ], %o1
<== NOT EXECUTED
blocks = rtems_rfs_rup_quotient(fs->group_inodes * RTEMS_RFS_INODE_SIZE,
40054d04: 83 28 a0 03 sll %g2, 3, %g1
<== NOT EXECUTED
printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",
40054d08: 92 58 80 09 smul %g2, %o1, %o1
<== NOT EXECUTED
blocks = rtems_rfs_rup_quotient(fs->group_inodes * RTEMS_RFS_INODE_SIZE,
40054d0c: 82 20 40 02 sub %g1, %g2, %g1
<== NOT EXECUTED
rtems_rfs_fs_block_size (fs));
40054d10: c6 07 bf 84 ld [ %fp + -124 ], %g3
<== NOT EXECUTED
blocks = rtems_rfs_rup_quotient(fs->group_inodes * RTEMS_RFS_INODE_SIZE,
40054d14: 83 28 60 03 sll %g1, 3, %g1
<== NOT EXECUTED
if (dividend == 0)
40054d18: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40054d1c: 02 80 00 0a be 40054d44 <rtems_rfs_format+0x4ac>
<== NOT EXECUTED
40054d20: 84 10 27 d0 mov 0x7d0, %g2
<== NOT EXECUTED
return ((dividend - 1) / divisor) + 1;
40054d24: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
40054d28: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40054d2c: 01 00 00 00 nop
<== NOT EXECUTED
40054d30: 01 00 00 00 nop
<== NOT EXECUTED
40054d34: 01 00 00 00 nop
<== NOT EXECUTED
40054d38: 84 70 40 03 udiv %g1, %g3, %g2
<== NOT EXECUTED
40054d3c: 84 00 a0 02 add %g2, 2, %g2
<== NOT EXECUTED
40054d40: 84 58 a3 e8 smul %g2, 0x3e8, %g2
<== NOT EXECUTED
return ((blocks + 1) * 100 * 10) / bits_per_block;
40054d44: d6 07 bf 80 ld [ %fp + -128 ], %o3
<== NOT EXECUTED
return rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs));
40054d48: 83 28 e0 03 sll %g3, 3, %g1
<== NOT EXECUTED
return ((blocks + 1) * 100 * 10) / bits_per_block;
40054d4c: 96 02 ff ff add %o3, -1, %o3
<== NOT EXECUTED
40054d50: 80 a2 c0 01 cmp %o3, %g1
<== NOT EXECUTED
40054d54: 38 80 00 02 bgu,a 40054d5c <rtems_rfs_format+0x4c4>
<== NOT EXECUTED
40054d58: 96 10 00 01 mov %g1, %o3
<== NOT EXECUTED
40054d5c: 83 38 a0 1f sra %g2, 0x1f, %g1
<== NOT EXECUTED
40054d60: 81 80 60 00 wr %g1, %y
<== NOT EXECUTED
40054d64: 01 00 00 00 nop
<== NOT EXECUTED
40054d68: 01 00 00 00 nop
<== NOT EXECUTED
40054d6c: 01 00 00 00 nop
<== NOT EXECUTED
40054d70: 84 78 80 0b sdiv %g2, %o3, %g2
<== NOT EXECUTED
printf ("rtems-rfs: format: inodes = %zu (%d.%d%%)\n",
40054d74: 03 19 99 99 sethi %hi(0x66666400), %g1
<== NOT EXECUTED
40054d78: 87 38 a0 1f sra %g2, 0x1f, %g3
<== NOT EXECUTED
40054d7c: 82 10 62 67 or %g1, 0x267, %g1
<== NOT EXECUTED
40054d80: 80 58 80 01 smul %g2, %g1, %g0
<== NOT EXECUTED
40054d84: 83 40 00 00 rd %y, %g1
<== NOT EXECUTED
40054d88: 83 38 60 02 sra %g1, 2, %g1
<== NOT EXECUTED
40054d8c: 82 20 40 03 sub %g1, %g3, %g1
<== NOT EXECUTED
40054d90: 94 10 00 01 mov %g1, %o2
<== NOT EXECUTED
40054d94: 97 28 60 02 sll %g1, 2, %o3
<== NOT EXECUTED
40054d98: 82 02 c0 01 add %o3, %g1, %g1
<== NOT EXECUTED
40054d9c: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054da0: 97 28 60 01 sll %g1, 1, %o3
<== NOT EXECUTED
40054da4: 90 12 23 48 or %o0, 0x348, %o0
<== NOT EXECUTED
40054da8: 7f ff 9b e8 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054dac: 96 20 80 0b sub %g2, %o3, %o3
<== NOT EXECUTED
printf ("rtems-rfs: format: groups = %u\n", fs.group_count);
40054db0: d2 07 bf a0 ld [ %fp + -96 ], %o1
<== NOT EXECUTED
40054db4: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054db8: 7f ff 9b e4 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054dbc: 90 12 23 78 or %o0, 0x378, %o0 ! 40087778 <MSDOS_DOT_NAME+0x1650>
<== NOT EXECUTED
printf ("rtems-rfs: format: group blocks = %zu\n", fs.group_blocks);
40054dc0: d2 07 bf a4 ld [ %fp + -92 ], %o1
<== NOT EXECUTED
40054dc4: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054dc8: 7f ff 9b e0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054dcc: 90 12 23 98 or %o0, 0x398, %o0 ! 40087798 <MSDOS_DOT_NAME+0x1670>
<== NOT EXECUTED
printf ("rtems-rfs: format: group inodes = %zu\n", fs.group_inodes);
40054dd0: d2 07 bf a8 ld [ %fp + -88 ], %o1
<== NOT EXECUTED
40054dd4: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054dd8: 7f ff 9b dc call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054ddc: 90 12 23 c0 or %o0, 0x3c0, %o0 ! 400877c0 <MSDOS_DOT_NAME+0x1698>
<== NOT EXECUTED
40054de0: 10 bf ff 1f b 40054a5c <rtems_rfs_format+0x1c4>
<== NOT EXECUTED
40054de4: fa 07 bf 84 ld [ %fp + -124 ], %i5
<== NOT EXECUTED
return ((dividend - 1) / divisor) + 1;
40054de8: 82 02 7f ff add %o1, -1, %g1
<== NOT EXECUTED
40054dec: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40054df0: 01 00 00 00 nop
<== NOT EXECUTED
40054df4: 01 00 00 00 nop
<== NOT EXECUTED
40054df8: 01 00 00 00 nop
<== NOT EXECUTED
40054dfc: 88 70 40 1c udiv %g1, %i4, %g4
<== NOT EXECUTED
40054e00: 88 01 20 01 inc %g4
<== NOT EXECUTED
fs->group_count = rtems_rfs_rup_quotient (rtems_rfs_fs_blocks (fs),
40054e04: c8 27 bf a0 st %g4, [ %fp + -96 ]
<== NOT EXECUTED
40054e08: 83 37 60 03 srl %i5, 3, %g1
<== NOT EXECUTED
fs->group_inodes = config->group_inodes;
40054e0c: c6 06 60 08 ld [ %i1 + 8 ], %g3
<== NOT EXECUTED
40054e10: 05 09 24 92 sethi %hi(0x24924800), %g2
<== NOT EXECUTED
if (!fs->group_inodes)
40054e14: 80 a0 e0 00 cmp %g3, 0
<== NOT EXECUTED
40054e18: 84 10 a1 25 or %g2, 0x125, %g2
<== NOT EXECUTED
40054e1c: 80 50 40 02 umul %g1, %g2, %g0
<== NOT EXECUTED
40054e20: 83 40 00 00 rd %y, %g1
<== NOT EXECUTED
40054e24: 32 bf fe f8 bne,a 40054a04 <rtems_rfs_format+0x16c>
<== NOT EXECUTED
40054e28: c2 27 bf ac st %g1, [ %fp + -84 ]
<== NOT EXECUTED
if (config->inode_overhead)
40054e2c: 10 bf ff 66 b 40054bc4 <rtems_rfs_format+0x32c>
<== NOT EXECUTED
40054e30: c6 06 60 0c ld [ %i1 + 0xc ], %g3
<== NOT EXECUTED
if (total_size >= GIGS (1))
40054e34: 82 10 63 ff or %g1, 0x3ff, %g1
<== NOT EXECUTED
40054e38: 80 a2 40 01 cmp %o1, %g1
<== NOT EXECUTED
40054e3c: 18 bf ff 39 bgu 40054b20 <rtems_rfs_format+0x288>
<== NOT EXECUTED
40054e40: 84 10 20 00 clr %g2
<== NOT EXECUTED
40054e44: d2 07 bf 84 ld [ %fp + -124 ], %o1
<== NOT EXECUTED
if (fs->block_size < 512)
40054e48: 80 a2 61 ff cmp %o1, 0x1ff
<== NOT EXECUTED
40054e4c: 08 bf ff 48 bleu 40054b6c <rtems_rfs_format+0x2d4>
<== NOT EXECUTED
40054e50: c2 07 bf 8c ld [ %fp + -116 ], %g1
<== NOT EXECUTED
if (fs->block_size > (4 * 1024))
40054e54: 03 00 00 04 sethi %hi(0x1000), %g1
<== NOT EXECUTED
40054e58: 80 a2 40 01 cmp %o1, %g1
<== NOT EXECUTED
40054e5c: 28 80 00 05 bleu,a 40054e70 <rtems_rfs_format+0x5d8>
<== NOT EXECUTED
40054e60: c2 07 bf 8c ld [ %fp + -116 ], %g1
<== NOT EXECUTED
fs->block_size = (4 * 1024);
40054e64: c2 27 bf 84 st %g1, [ %fp + -124 ]
<== NOT EXECUTED
40054e68: 92 10 00 01 mov %g1, %o1
<== NOT EXECUTED
40054e6c: c2 07 bf 8c ld [ %fp + -116 ], %g1
<== NOT EXECUTED
40054e70: 10 bf fe b5 b 40054944 <rtems_rfs_format+0xac>
<== NOT EXECUTED
40054e74: d4 00 60 20 ld [ %g1 + 0x20 ], %o2
<== NOT EXECUTED
sb = rtems_rfs_buffer_data (&handle);
40054e78: c2 07 bf 5c ld [ %fp + -164 ], %g1
<== NOT EXECUTED
40054e7c: c2 00 60 1c ld [ %g1 + 0x1c ], %g1
<== NOT EXECUTED
memset (sb, 0xff, rtems_rfs_fs_block_size (fs));
40054e80: d4 07 bf 84 ld [ %fp + -124 ], %o2
<== NOT EXECUTED
40054e84: 92 10 20 ff mov 0xff, %o1
<== NOT EXECUTED
40054e88: 40 00 30 dc call 400611f8 <memset>
<== NOT EXECUTED
40054e8c: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_MAGIC, RTEMS_RFS_SB_MAGIC);
40054e90: 84 10 20 28 mov 0x28, %g2
<== NOT EXECUTED
40054e94: c4 2a 00 00 stb %g2, [ %o0 ]
<== NOT EXECUTED
40054e98: 84 10 20 09 mov 9, %g2
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_VERSION, RTEMS_RFS_VERSION);
40054e9c: c0 2a 20 04 clrb [ %o0 + 4 ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_MAGIC, RTEMS_RFS_SB_MAGIC);
40054ea0: 86 10 20 01 mov 1, %g3
<== NOT EXECUTED
40054ea4: c4 2a 20 01 stb %g2, [ %o0 + 1 ]
<== NOT EXECUTED
40054ea8: 84 10 20 20 mov 0x20, %g2
<== NOT EXECUTED
40054eac: c6 2a 20 03 stb %g3, [ %o0 + 3 ]
<== NOT EXECUTED
memset (sb, 0xff, rtems_rfs_fs_block_size (fs));
40054eb0: 82 10 00 08 mov %o0, %g1
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_VERSION, RTEMS_RFS_VERSION);
40054eb4: c0 2a 20 05 clrb [ %o0 + 5 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (fs, &handle);
40054eb8: 92 07 bf 54 add %fp, -172, %o1
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_MAGIC, RTEMS_RFS_SB_MAGIC);
40054ebc: c4 2a 20 02 stb %g2, [ %o0 + 2 ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_VERSION, RTEMS_RFS_VERSION);
40054ec0: c0 2a 20 06 clrb [ %o0 + 6 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (fs, &handle);
40054ec4: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_VERSION, RTEMS_RFS_VERSION);
40054ec8: c0 28 60 07 clrb [ %g1 + 7 ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE, rtems_rfs_fs_block_size (fs));
40054ecc: c4 0f bf 84 ldub [ %fp + -124 ], %g2
<== NOT EXECUTED
40054ed0: c4 28 60 08 stb %g2, [ %g1 + 8 ]
<== NOT EXECUTED
40054ed4: c4 17 bf 84 lduh [ %fp + -124 ], %g2
<== NOT EXECUTED
40054ed8: c4 28 60 09 stb %g2, [ %g1 + 9 ]
<== NOT EXECUTED
40054edc: c4 07 bf 84 ld [ %fp + -124 ], %g2
<== NOT EXECUTED
40054ee0: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40054ee4: c4 28 60 0a stb %g2, [ %g1 + 0xa ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_BLOCKS, rtems_rfs_fs_blocks (fs));
40054ee8: c4 07 bf 80 ld [ %fp + -128 ], %g2
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE, rtems_rfs_fs_block_size (fs));
40054eec: c8 07 bf 84 ld [ %fp + -124 ], %g4
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_BLOCKS, rtems_rfs_fs_blocks (fs));
40054ef0: c4 28 60 0f stb %g2, [ %g1 + 0xf ]
<== NOT EXECUTED
40054ef4: b9 30 a0 18 srl %g2, 0x18, %i4
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE, rtems_rfs_fs_block_size (fs));
40054ef8: c8 28 60 0b stb %g4, [ %g1 + 0xb ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_BLOCKS, rtems_rfs_fs_blocks (fs));
40054efc: 89 30 a0 10 srl %g2, 0x10, %g4
<== NOT EXECUTED
40054f00: f8 28 60 0c stb %i4, [ %g1 + 0xc ]
<== NOT EXECUTED
40054f04: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40054f08: c8 28 60 0d stb %g4, [ %g1 + 0xd ]
<== NOT EXECUTED
40054f0c: c4 28 60 0e stb %g2, [ %g1 + 0xe ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_BAD_BLOCKS, fs->bad_blocks);
40054f10: c4 0f bf 94 ldub [ %fp + -108 ], %g2
<== NOT EXECUTED
40054f14: c4 28 60 10 stb %g2, [ %g1 + 0x10 ]
<== NOT EXECUTED
40054f18: c4 17 bf 94 lduh [ %fp + -108 ], %g2
<== NOT EXECUTED
40054f1c: c4 28 60 11 stb %g2, [ %g1 + 0x11 ]
<== NOT EXECUTED
40054f20: c4 07 bf 94 ld [ %fp + -108 ], %g2
<== NOT EXECUTED
40054f24: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40054f28: c4 28 60 12 stb %g2, [ %g1 + 0x12 ]
<== NOT EXECUTED
40054f2c: c4 07 bf 94 ld [ %fp + -108 ], %g2
<== NOT EXECUTED
40054f30: c4 28 60 13 stb %g2, [ %g1 + 0x13 ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_MAX_NAME_LENGTH, fs->max_name_length);
40054f34: c4 0f bf 98 ldub [ %fp + -104 ], %g2
<== NOT EXECUTED
40054f38: c4 28 60 14 stb %g2, [ %g1 + 0x14 ]
<== NOT EXECUTED
40054f3c: c4 17 bf 98 lduh [ %fp + -104 ], %g2
<== NOT EXECUTED
40054f40: c4 28 60 15 stb %g2, [ %g1 + 0x15 ]
<== NOT EXECUTED
40054f44: c4 07 bf 98 ld [ %fp + -104 ], %g2
<== NOT EXECUTED
40054f48: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40054f4c: c4 28 60 16 stb %g2, [ %g1 + 0x16 ]
<== NOT EXECUTED
40054f50: c4 07 bf 98 ld [ %fp + -104 ], %g2
<== NOT EXECUTED
40054f54: c4 28 60 17 stb %g2, [ %g1 + 0x17 ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_GROUPS, fs->group_count);
40054f58: c4 0f bf a0 ldub [ %fp + -96 ], %g2
<== NOT EXECUTED
40054f5c: c4 28 60 18 stb %g2, [ %g1 + 0x18 ]
<== NOT EXECUTED
40054f60: c4 17 bf a0 lduh [ %fp + -96 ], %g2
<== NOT EXECUTED
40054f64: c4 28 60 19 stb %g2, [ %g1 + 0x19 ]
<== NOT EXECUTED
40054f68: c4 07 bf a0 ld [ %fp + -96 ], %g2
<== NOT EXECUTED
40054f6c: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40054f70: c4 28 60 1a stb %g2, [ %g1 + 0x1a ]
<== NOT EXECUTED
40054f74: c4 07 bf a0 ld [ %fp + -96 ], %g2
<== NOT EXECUTED
40054f78: c4 28 60 1b stb %g2, [ %g1 + 0x1b ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_GROUP_BLOCKS, fs->group_blocks);
40054f7c: c4 0f bf a4 ldub [ %fp + -92 ], %g2
<== NOT EXECUTED
40054f80: c4 28 60 1c stb %g2, [ %g1 + 0x1c ]
<== NOT EXECUTED
40054f84: c4 17 bf a4 lduh [ %fp + -92 ], %g2
<== NOT EXECUTED
40054f88: c4 28 60 1d stb %g2, [ %g1 + 0x1d ]
<== NOT EXECUTED
40054f8c: c4 07 bf a4 ld [ %fp + -92 ], %g2
<== NOT EXECUTED
40054f90: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40054f94: c4 28 60 1e stb %g2, [ %g1 + 0x1e ]
<== NOT EXECUTED
40054f98: c4 07 bf a4 ld [ %fp + -92 ], %g2
<== NOT EXECUTED
40054f9c: c4 28 60 1f stb %g2, [ %g1 + 0x1f ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_GROUP_INODES, fs->group_inodes);
40054fa0: c4 0f bf a8 ldub [ %fp + -88 ], %g2
<== NOT EXECUTED
40054fa4: c4 28 60 20 stb %g2, [ %g1 + 0x20 ]
<== NOT EXECUTED
40054fa8: c4 17 bf a8 lduh [ %fp + -88 ], %g2
<== NOT EXECUTED
40054fac: c4 28 60 21 stb %g2, [ %g1 + 0x21 ]
<== NOT EXECUTED
40054fb0: c4 07 bf a8 ld [ %fp + -88 ], %g2
<== NOT EXECUTED
40054fb4: 85 30 a0 08 srl %g2, 8, %g2
<== NOT EXECUTED
40054fb8: c4 28 60 22 stb %g2, [ %g1 + 0x22 ]
<== NOT EXECUTED
40054fbc: c4 07 bf a8 ld [ %fp + -88 ], %g2
<== NOT EXECUTED
40054fc0: c4 28 60 23 stb %g2, [ %g1 + 0x23 ]
<== NOT EXECUTED
write_sb (RTEMS_RFS_SB_OFFSET_INODE_SIZE, RTEMS_RFS_INODE_SIZE);
40054fc4: 84 10 20 38 mov 0x38, %g2
<== NOT EXECUTED
40054fc8: c0 28 60 24 clrb [ %g1 + 0x24 ]
<== NOT EXECUTED
40054fcc: c4 28 60 27 stb %g2, [ %g1 + 0x27 ]
<== NOT EXECUTED
40054fd0: c0 28 60 25 clrb [ %g1 + 0x25 ]
<== NOT EXECUTED
40054fd4: c0 28 60 26 clrb [ %g1 + 0x26 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (fs, &handle);
40054fd8: 7f ff f1 b3 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40054fdc: c6 2f bf 54 stb %g3, [ %fp + -172 ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40054fe0: 92 07 bf 54 add %fp, -172, %o1
<== NOT EXECUTED
40054fe4: b8 10 00 08 mov %o0, %i4
<== NOT EXECUTED
if (rc > 0)
40054fe8: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
40054fec: 04 80 00 17 ble 40055048 <rtems_rfs_format+0x7b0>
<== NOT EXECUTED
40054ff0: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
40054ff4: 7f ff f1 ac call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40054ff8: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
printf ("rtems-rfs: write-superblock: buffer release failed: %d: %s\n",
40054ffc: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
handle->dirty = false;
40055000: c0 2f bf 54 clrb [ %fp + -172 ]
<== NOT EXECUTED
handle->bnum = 0;
40055004: c0 27 bf 58 clr [ %fp + -168 ]
<== NOT EXECUTED
40055008: 40 00 3d 66 call 400645a0 <strerror>
<== NOT EXECUTED
4005500c: c0 27 bf 5c clr [ %fp + -164 ]
<== NOT EXECUTED
40055010: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
40055014: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40055018: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
4005501c: 7f ff 9b 4b call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055020: 90 12 20 58 or %o0, 0x58, %o0 ! 40087858 <MSDOS_DOT_NAME+0x1730>
<== NOT EXECUTED
printf ("rtems-rfs: format: superblock write failed\n");
40055024: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40055028: 7f ff 9b 57 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4005502c: 90 12 20 98 or %o0, 0x98, %o0 ! 40087898 <MSDOS_DOT_NAME+0x1770>
<== NOT EXECUTED
errno = EIO;
40055030: 40 00 1e 39 call 4005c914 <__errno>
<== NOT EXECUTED
40055034: 01 00 00 00 nop
<== NOT EXECUTED
40055038: 82 10 20 05 mov 5, %g1 ! 5 <_TLS_Alignment+0x4>
<== NOT EXECUTED
4005503c: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
40055040: 81 c7 e0 08 ret
<== NOT EXECUTED
40055044: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40055048: 7f ff f1 97 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
4005504c: 01 00 00 00 nop
<== NOT EXECUTED
}
for (group = 0; group < fs.group_count; group++)
40055050: c2 07 bf a0 ld [ %fp + -96 ], %g1
<== NOT EXECUTED
40055054: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40055058: 04 80 00 a1 ble 400552dc <rtems_rfs_format+0xa44>
<== NOT EXECUTED
4005505c: c2 07 bf 80 ld [ %fp + -128 ], %g1
<== NOT EXECUTED
if (group_base > rtems_rfs_fs_blocks (fs))
40055060: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40055064: 02 80 00 34 be 40055134 <rtems_rfs_format+0x89c>
<== NOT EXECUTED
40055068: 29 10 02 1e sethi %hi(0x40087800), %l4
<== NOT EXECUTED
printf (", inodes");
4005506c: 86 15 22 30 or %l4, 0x230, %g3 ! 40087a30 <MSDOS_DOT_NAME+0x1908>
<== NOT EXECUTED
40055070: c6 27 bf 3c st %g3, [ %fp + -196 ]
<== NOT EXECUTED
printf ("\rrtems-rfs: format: group %3d: base = %" PRId32 ", size = %zd",
40055074: 25 10 02 1e sethi %hi(0x40087800), %l2
<== NOT EXECUTED
if (!rtems_rfs_write_group (&fs, group,
40055078: ea 0e 60 14 ldub [ %i1 + 0x14 ], %l5
<== NOT EXECUTED
4005507c: c4 0e 60 15 ldub [ %i1 + 0x15 ], %g2
<== NOT EXECUTED
group_base = rtems_rfs_fs_block (fs, group, 0);
40055080: f6 07 bf a4 ld [ %fp + -92 ], %i3
<== NOT EXECUTED
printf (", blocks");
40055084: 23 10 02 1e sethi %hi(0x40087800), %l1
<== NOT EXECUTED
group_base = rtems_rfs_fs_block (fs, group, 0);
40055088: b8 10 20 01 mov 1, %i4
<== NOT EXECUTED
4005508c: a0 10 20 00 clr %l0
<== NOT EXECUTED
printf ("\rrtems-rfs: format: group %3d: base = %" PRId32 ", size = %zd",
40055090: a4 14 a1 08 or %l2, 0x108, %l2
<== NOT EXECUTED
printf (", blocks");
40055094: a2 14 61 40 or %l1, 0x140, %l1
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle);
40055098: a6 10 20 01 mov 1, %l3
<== NOT EXECUTED
if ((group_base + group_size) > rtems_rfs_fs_blocks (fs))
4005509c: 86 06 c0 1c add %i3, %i4, %g3
<== NOT EXECUTED
400550a0: 80 a0 c0 01 cmp %g3, %g1
<== NOT EXECUTED
400550a4: 38 80 00 02 bgu,a 400550ac <rtems_rfs_format+0x814>
<== NOT EXECUTED
400550a8: b6 20 40 1c sub %g1, %i4, %i3
<== NOT EXECUTED
if (verbose)
400550ac: b4 88 a0 ff andcc %g2, 0xff, %i2
<== NOT EXECUTED
400550b0: 12 80 00 46 bne 400551c8 <rtems_rfs_format+0x930>
<== NOT EXECUTED
400550b4: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
handle->dirty = false;
400550b8: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
400550bc: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
handle->buffer = NULL;
400550c0: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
rc = rtems_rfs_bitmap_open (&bitmap, fs, &handle, group_size,
400550c4: 98 10 00 1c mov %i4, %o4
<== NOT EXECUTED
400550c8: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
400550cc: 94 07 bf 48 add %fp, -184, %o2
<== NOT EXECUTED
400550d0: 92 07 bf 7c add %fp, -132, %o1
<== NOT EXECUTED
400550d4: 40 00 1b 81 call 4005bed8 <rtems_rfs_bitmap_open>
<== NOT EXECUTED
400550d8: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
if (rc > 0)
400550dc: ac 92 20 00 orcc %o0, 0, %l6
<== NOT EXECUTED
400550e0: 04 80 00 1f ble 4005515c <rtems_rfs_format+0x8c4>
<== NOT EXECUTED
400550e4: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400550e8: 7f ff f1 6f call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400550ec: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("\nrtems-rfs: write-group: group %3d: open block bitmap failed: %d: %s\n",
400550f0: 90 10 00 16 mov %l6, %o0
<== NOT EXECUTED
handle->dirty = false;
400550f4: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
400550f8: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
400550fc: 40 00 3d 29 call 400645a0 <strerror>
<== NOT EXECUTED
40055100: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
40055104: 94 10 00 16 mov %l6, %o2
<== NOT EXECUTED
40055108: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
4005510c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40055110: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40055114: 7f ff 9b 0d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055118: 90 12 21 50 or %o0, 0x150, %o0 ! 40087950 <MSDOS_DOT_NAME+0x1828>
<== NOT EXECUTED
config->initialise_inodes, config->verbose))
{
errno = EIO;
4005511c: 40 00 1d fe call 4005c914 <__errno>
<== NOT EXECUTED
40055120: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
40055124: 82 10 20 05 mov 5, %g1
<== NOT EXECUTED
40055128: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
4005512c: 81 c7 e0 08 ret
<== NOT EXECUTED
40055130: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: write-group: group %d base beyond disk limit\n",
40055134: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40055138: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
4005513c: 7f ff 9b 03 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055140: 90 12 20 c8 or %o0, 0xc8, %o0 ! 400878c8 <MSDOS_DOT_NAME+0x17a0>
<== NOT EXECUTED
errno = EIO;
40055144: 40 00 1d f4 call 4005c914 <__errno>
<== NOT EXECUTED
40055148: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
4005514c: 82 10 20 05 mov 5, %g1
<== NOT EXECUTED
40055150: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
40055154: 81 c7 e0 08 ret
<== NOT EXECUTED
40055158: 81 e8 00 00 restore
<== NOT EXECUTED
memset (rtems_rfs_buffer_data (&handle), 0xff, rtems_rfs_fs_block_size (fs));
4005515c: c2 07 bf 50 ld [ %fp + -176 ], %g1
<== NOT EXECUTED
40055160: d4 07 bf 84 ld [ %fp + -124 ], %o2
<== NOT EXECUTED
40055164: d0 00 60 1c ld [ %g1 + 0x1c ], %o0
<== NOT EXECUTED
40055168: 40 00 30 24 call 400611f8 <memset>
<== NOT EXECUTED
4005516c: 92 10 20 ff mov 0xff, %o1
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_clear_all (&bitmap);
40055170: 40 00 1a a6 call 4005bc08 <rtems_rfs_bitmap_map_clear_all>
<== NOT EXECUTED
40055174: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
if (rc > 0)
40055178: ac 92 20 00 orcc %o0, 0, %l6
<== NOT EXECUTED
4005517c: 04 80 00 1e ble 400551f4 <rtems_rfs_format+0x95c>
<== NOT EXECUTED
40055180: 92 10 20 00 clr %o1
<== NOT EXECUTED
rtems_rfs_bitmap_close (&bitmap);
40055184: 40 00 1b 66 call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
40055188: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
4005518c: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
40055190: 7f ff f1 45 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055194: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("\nrtems-rfs: write-group: group %3d: block bitmap clear all failed: %d: %s\n",
40055198: 90 10 00 16 mov %l6, %o0
<== NOT EXECUTED
handle->dirty = false;
4005519c: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
400551a0: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
400551a4: 40 00 3c ff call 400645a0 <strerror>
<== NOT EXECUTED
400551a8: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
400551ac: 94 10 00 16 mov %l6, %o2
<== NOT EXECUTED
400551b0: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
400551b4: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400551b8: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
400551bc: 7f ff 9a e3 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400551c0: 90 12 21 98 or %o0, 0x198, %o0 ! 40087998 <MSDOS_DOT_NAME+0x1870>
<== NOT EXECUTED
400551c4: 30 bf ff d6 b,a 4005511c <rtems_rfs_format+0x884>
<== NOT EXECUTED
printf ("\rrtems-rfs: format: group %3d: base = %" PRId32 ", size = %zd",
400551c8: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
400551cc: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400551d0: 7f ff 9a de call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400551d4: 90 10 00 12 mov %l2, %o0
<== NOT EXECUTED
printf (", blocks");
400551d8: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
handle->dirty = false;
400551dc: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
400551e0: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
400551e4: 7f ff 9a d9 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400551e8: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
rc = rtems_rfs_bitmap_open (&bitmap, fs, &handle, group_size,
400551ec: 10 bf ff b7 b 400550c8 <rtems_rfs_format+0x830>
<== NOT EXECUTED
400551f0: 98 10 00 1c mov %i4, %o4
<== NOT EXECUTED
rtems_rfs_bitmap_map_set (&bitmap, RTEMS_RFS_GROUP_BLOCK_BITMAP_BLOCK);
400551f4: 40 00 1a 20 call 4005ba74 <rtems_rfs_bitmap_map_set>
<== NOT EXECUTED
400551f8: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
rtems_rfs_bitmap_map_set (&bitmap, RTEMS_RFS_GROUP_INODE_BITMAP_BLOCK);
400551fc: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40055200: 40 00 1a 1d call 4005ba74 <rtems_rfs_bitmap_map_set>
<== NOT EXECUTED
40055204: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
blocks = rtems_rfs_rup_quotient (fs->group_inodes, fs->inodes_per_block);
40055208: c2 07 bf a8 ld [ %fp + -88 ], %g1
<== NOT EXECUTED
if (dividend == 0)
4005520c: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40055210: 02 80 00 74 be 400553e0 <rtems_rfs_format+0xb48>
<== NOT EXECUTED
40055214: 92 10 20 02 mov 2, %o1
<== NOT EXECUTED
return ((dividend - 1) / divisor) + 1;
40055218: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
4005521c: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40055220: ee 07 bf ac ld [ %fp + -84 ], %l7
<== NOT EXECUTED
40055224: 01 00 00 00 nop
<== NOT EXECUTED
40055228: 01 00 00 00 nop
<== NOT EXECUTED
4005522c: ae 70 40 17 udiv %g1, %l7, %l7
<== NOT EXECUTED
40055230: ac 05 e0 01 add %l7, 1, %l6
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
40055234: 80 a5 a0 00 cmp %l6, 0
<== NOT EXECUTED
40055238: 04 80 00 0a ble 40055260 <rtems_rfs_format+0x9c8>
<== NOT EXECUTED
4005523c: ae 05 e0 03 add %l7, 3, %l7
<== NOT EXECUTED
40055240: a8 10 20 02 mov 2, %l4
<== NOT EXECUTED
rtems_rfs_bitmap_map_set (&bitmap, b + RTEMS_RFS_GROUP_INODE_BLOCK);
40055244: 92 10 00 14 mov %l4, %o1
<== NOT EXECUTED
40055248: 40 00 1a 0b call 4005ba74 <rtems_rfs_bitmap_map_set>
<== NOT EXECUTED
4005524c: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
40055250: a8 05 20 01 inc %l4
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
40055254: 80 a5 c0 14 cmp %l7, %l4
<== NOT EXECUTED
40055258: 12 bf ff fc bne 40055248 <rtems_rfs_format+0x9b0>
<== NOT EXECUTED
4005525c: 92 10 00 14 mov %l4, %o1
<== NOT EXECUTED
rc = rtems_rfs_bitmap_close (&bitmap);
40055260: 40 00 1b 2f call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
40055264: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
if (rc > 0)
40055268: ae 92 20 00 orcc %o0, 0, %l7
<== NOT EXECUTED
4005526c: 14 80 00 66 bg 40055404 <rtems_rfs_format+0xb6c>
<== NOT EXECUTED
40055270: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
if (verbose)
40055274: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40055278: 12 80 00 9f bne 400554f4 <rtems_rfs_format+0xc5c>
<== NOT EXECUTED
4005527c: e6 2f bf 48 stb %l3, [ %fp + -184 ]
<== NOT EXECUTED
rc = rtems_rfs_bitmap_open (&bitmap, fs, &handle, group_size,
40055280: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
40055284: 98 04 20 02 add %l0, 2, %o4
<== NOT EXECUTED
40055288: 94 07 bf 48 add %fp, -184, %o2
<== NOT EXECUTED
4005528c: 92 07 bf 7c add %fp, -132, %o1
<== NOT EXECUTED
40055290: 40 00 1b 12 call 4005bed8 <rtems_rfs_bitmap_open>
<== NOT EXECUTED
40055294: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
if (rc > 0)
40055298: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
4005529c: 04 80 00 7a ble 40055484 <rtems_rfs_format+0xbec>
<== NOT EXECUTED
400552a0: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400552a4: 7f ff f1 00 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400552a8: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("\nrtems-rfs: write-group: group %3d: open inode bitmap failed: %d: %s\n",
400552ac: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
handle->dirty = false;
400552b0: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
400552b4: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
400552b8: 40 00 3c ba call 400645a0 <strerror>
<== NOT EXECUTED
400552bc: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
400552c0: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
400552c4: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
400552c8: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400552cc: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
400552d0: 7f ff 9a 9e call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400552d4: 90 12 22 40 or %o0, 0x240, %o0 ! 40087a40 <MSDOS_DOT_NAME+0x1918>
<== NOT EXECUTED
400552d8: 30 bf ff 91 b,a 4005511c <rtems_rfs_format+0x884>
<== NOT EXECUTED
}
if (config->verbose)
400552dc: c2 0e 60 15 ldub [ %i1 + 0x15 ], %g1
<== NOT EXECUTED
400552e0: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400552e4: 12 80 00 65 bne 40055478 <rtems_rfs_format+0xbe0>
<== NOT EXECUTED
400552e8: 01 00 00 00 nop
<== NOT EXECUTED
printf ("\n");
rc = rtems_rfs_buffer_close (&fs);
400552ec: 7f ff f1 ea call 40051a94 <rtems_rfs_buffer_close>
<== NOT EXECUTED
400552f0: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
if (rc != 0)
400552f4: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400552f8: 12 80 01 41 bne 400557fc <rtems_rfs_format+0xf64>
<== NOT EXECUTED
400552fc: 98 07 bf 44 add %fp, -188, %o4
<== NOT EXECUTED
rc = rtems_rfs_fs_open (name, NULL,
40055300: 96 10 20 00 clr %o3
<== NOT EXECUTED
40055304: 94 10 20 06 mov 6, %o2
<== NOT EXECUTED
40055308: 92 10 20 00 clr %o1
<== NOT EXECUTED
4005530c: 7f ff fb 37 call 40053fe8 <rtems_rfs_fs_open>
<== NOT EXECUTED
40055310: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc != 0)
40055314: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055318: 12 80 00 49 bne 4005543c <rtems_rfs_format+0xba4>
<== NOT EXECUTED
4005531c: 94 07 bf 48 add %fp, -184, %o2
<== NOT EXECUTED
rc = rtems_rfs_inode_alloc (fs, RTEMS_RFS_ROOT_INO, &ino);
40055320: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
40055324: 40 00 03 68 call 400560c4 <rtems_rfs_inode_alloc>
<== NOT EXECUTED
40055328: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
if (rc != 0)
4005532c: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40055330: 12 80 00 87 bne 4005554c <rtems_rfs_format+0xcb4>
<== NOT EXECUTED
40055334: d2 07 bf 48 ld [ %fp + -184 ], %o1
<== NOT EXECUTED
if (ino != RTEMS_RFS_ROOT_INO)
40055338: 80 a2 60 01 cmp %o1, 1
<== NOT EXECUTED
4005533c: 12 80 00 72 bne 40055504 <rtems_rfs_format+0xc6c>
<== NOT EXECUTED
40055340: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, ino, &inode, true);
40055344: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
40055348: 94 07 bf 54 add %fp, -172, %o2
<== NOT EXECUTED
4005534c: 40 00 03 95 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40055350: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
if (rc != 0)
40055354: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40055358: 12 80 00 fa bne 40055740 <rtems_rfs_format+0xea8>
<== NOT EXECUTED
4005535c: 98 10 20 00 clr %o4
<== NOT EXECUTED
rc = rtems_rfs_inode_initialise (&inode, 0,
40055360: 96 10 20 00 clr %o3
<== NOT EXECUTED
40055364: 92 10 20 00 clr %o1
<== NOT EXECUTED
40055368: 15 00 00 10 sethi %hi(0x4000), %o2
<== NOT EXECUTED
4005536c: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
40055370: 40 00 04 9c call 400565e0 <rtems_rfs_inode_initialise>
<== NOT EXECUTED
40055374: 94 12 a1 c9 or %o2, 0x1c9, %o2
<== NOT EXECUTED
if (rc != 0)
40055378: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
4005537c: 12 80 00 d7 bne 400556d8 <rtems_rfs_format+0xe40>
<== NOT EXECUTED
40055380: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_dir_add_entry (fs, &inode, ".", 1, ino);
40055384: d8 07 bf 48 ld [ %fp + -184 ], %o4
<== NOT EXECUTED
40055388: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
4005538c: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40055390: 92 07 bf 54 add %fp, -172, %o1
<== NOT EXECUTED
40055394: 15 10 01 fc sethi %hi(0x4007f000), %o2
<== NOT EXECUTED
40055398: 7f ff f3 48 call 400520b8 <rtems_rfs_dir_add_entry>
<== NOT EXECUTED
4005539c: 94 12 a1 e0 or %o2, 0x1e0, %o2 ! 4007f1e0 <suffixes+0xbf0>
<== NOT EXECUTED
if (rc != 0)
400553a0: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400553a4: 12 80 00 c4 bne 400556b4 <rtems_rfs_format+0xe1c>
<== NOT EXECUTED
400553a8: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &inode);
400553ac: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
400553b0: 40 00 03 f3 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400553b4: 92 07 bf 54 add %fp, -172, %o1
<== NOT EXECUTED
if (rc != 0)
400553b8: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400553bc: 12 80 00 b6 bne 40055694 <rtems_rfs_format+0xdfc>
<== NOT EXECUTED
400553c0: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_fs_close (fs);
400553c4: 7f ff fd 13 call 40054810 <rtems_rfs_fs_close>
<== NOT EXECUTED
400553c8: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
if (rc != 0)
400553cc: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400553d0: 12 80 00 a5 bne 40055664 <rtems_rfs_format+0xdcc>
<== NOT EXECUTED
400553d4: 01 00 00 00 nop
<== NOT EXECUTED
errno = rc;
return -1;
}
return 0;
}
400553d8: 81 c7 e0 08 ret
<== NOT EXECUTED
400553dc: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_bitmap_map_set (&bitmap, b + RTEMS_RFS_GROUP_INODE_BLOCK);
400553e0: 40 00 19 a5 call 4005ba74 <rtems_rfs_bitmap_map_set>
<== NOT EXECUTED
400553e4: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
rc = rtems_rfs_bitmap_close (&bitmap);
400553e8: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
400553ec: 40 00 1a cc call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
400553f0: ac 10 20 01 mov 1, %l6
<== NOT EXECUTED
if (rc > 0)
400553f4: ae 92 20 00 orcc %o0, 0, %l7
<== NOT EXECUTED
400553f8: 04 bf ff a0 ble 40055278 <rtems_rfs_format+0x9e0>
<== NOT EXECUTED
400553fc: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40055400: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
40055404: 7f ff f0 a8 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055408: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("\nrtems-rfs: write-group: group %3d: close block bitmap failed: %d: %s\n",
4005540c: 90 10 00 17 mov %l7, %o0
<== NOT EXECUTED
handle->dirty = false;
40055410: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
40055414: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
40055418: 40 00 3c 62 call 400645a0 <strerror>
<== NOT EXECUTED
4005541c: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
40055420: 94 10 00 17 mov %l7, %o2
<== NOT EXECUTED
40055424: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40055428: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4005542c: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40055430: 7f ff 9a 46 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055434: 90 12 21 e8 or %o0, 0x1e8, %o0 ! 400879e8 <MSDOS_DOT_NAME+0x18c0>
<== NOT EXECUTED
40055438: 30 bf ff 39 b,a 4005511c <rtems_rfs_format+0x884>
<== NOT EXECUTED
rc = errno;
4005543c: 40 00 1d 36 call 4005c914 <__errno>
<== NOT EXECUTED
40055440: 01 00 00 00 nop
<== NOT EXECUTED
40055444: f0 02 00 00 ld [ %o0 ], %i0
<== NOT EXECUTED
printf ("rtems-rfs: format: file system open failed: %d: %s\n",
40055448: 40 00 3c 56 call 400645a0 <strerror>
<== NOT EXECUTED
4005544c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40055450: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
40055454: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40055458: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
4005545c: 7f ff 9a 3b call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055460: 90 12 23 98 or %o0, 0x398, %o0 ! 40087b98 <MSDOS_DOT_NAME+0x1a70>
<== NOT EXECUTED
if (rc != 0)
40055464: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
40055468: 12 80 00 2d bne 4005551c <rtems_rfs_format+0xc84>
<== NOT EXECUTED
4005546c: 01 00 00 00 nop
<== NOT EXECUTED
}
40055470: 81 c7 e0 08 ret
<== NOT EXECUTED
40055474: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("\n");
40055478: 7f ff 9a 49 call 4003bd9c <__wrap_putchar>
<== NOT EXECUTED
4005547c: 90 10 20 0a mov 0xa, %o0
<== NOT EXECUTED
40055480: 30 bf ff 9b b,a 400552ec <rtems_rfs_format+0xa54>
<== NOT EXECUTED
memset (rtems_rfs_buffer_data (&handle), 0x00, rtems_rfs_fs_block_size (fs));
40055484: c2 07 bf 50 ld [ %fp + -176 ], %g1
<== NOT EXECUTED
40055488: d4 07 bf 84 ld [ %fp + -124 ], %o2
<== NOT EXECUTED
4005548c: d0 00 60 1c ld [ %g1 + 0x1c ], %o0
<== NOT EXECUTED
40055490: 40 00 2f 5a call 400611f8 <memset>
<== NOT EXECUTED
40055494: 92 10 20 00 clr %o1
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_clear_all (&bitmap);
40055498: 40 00 19 dc call 4005bc08 <rtems_rfs_bitmap_map_clear_all>
<== NOT EXECUTED
4005549c: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
400554a0: b6 10 00 08 mov %o0, %i3
<== NOT EXECUTED
if (rc > 0)
400554a4: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
400554a8: 04 80 00 33 ble 40055574 <rtems_rfs_format+0xcdc>
<== NOT EXECUTED
400554ac: 90 07 bf 54 add %fp, -172, %o0
<== NOT EXECUTED
rtems_rfs_bitmap_close (&bitmap);
400554b0: 40 00 1a 9b call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
400554b4: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400554b8: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
400554bc: 7f ff f0 7a call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400554c0: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("\nrtems-rfs: write-group: group %3d: inode bitmap" \
400554c4: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
handle->dirty = false;
400554c8: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
400554cc: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
400554d0: 40 00 3c 34 call 400645a0 <strerror>
<== NOT EXECUTED
400554d4: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
400554d8: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
400554dc: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
400554e0: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400554e4: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
400554e8: 7f ff 9a 18 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400554ec: 90 12 22 88 or %o0, 0x288, %o0 ! 40087a88 <MSDOS_DOT_NAME+0x1960>
<== NOT EXECUTED
400554f0: 30 bf ff 0b b,a 4005511c <rtems_rfs_format+0x884>
<== NOT EXECUTED
printf (", inodes");
400554f4: 7f ff 9a 15 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400554f8: d0 07 bf 3c ld [ %fp + -196 ], %o0
<== NOT EXECUTED
rc = rtems_rfs_bitmap_open (&bitmap, fs, &handle, group_size,
400554fc: 10 bf ff 62 b 40055284 <rtems_rfs_format+0x9ec>
<== NOT EXECUTED
40055500: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
printf ("rtems-rfs: format: allocated inode not root ino: %" PRId32 "\n", ino);
40055504: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055508: 7f ff 9a 10 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005550c: 90 12 20 08 or %o0, 8, %o0 ! 40087c08 <MSDOS_DOT_NAME+0x1ae0>
<== NOT EXECUTED
rtems_rfs_fs_close (fs);
40055510: 7f ff fc c0 call 40054810 <rtems_rfs_fs_close>
<== NOT EXECUTED
40055514: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
return EINVAL;
40055518: b0 10 20 16 mov 0x16, %i0
<== NOT EXECUTED
printf ("rtems-rfs: format: writing root dir failed: %d: %s\n",
4005551c: 40 00 3c 21 call 400645a0 <strerror>
<== NOT EXECUTED
40055520: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40055524: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
40055528: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
4005552c: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055530: 7f ff 9a 06 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055534: 90 12 21 48 or %o0, 0x148, %o0 ! 40087d48 <MSDOS_DOT_NAME+0x1c20>
<== NOT EXECUTED
errno = rc;
40055538: 40 00 1c f7 call 4005c914 <__errno>
<== NOT EXECUTED
4005553c: 01 00 00 00 nop
<== NOT EXECUTED
40055540: f0 22 00 00 st %i0, [ %o0 ]
<== NOT EXECUTED
return -1;
40055544: 81 c7 e0 08 ret
<== NOT EXECUTED
40055548: 91 e8 3f ff restore %g0, -1, %o0
<== NOT EXECUTED
printf ("rtems-rfs: format: inode allocation failed: %d: %s\n",
4005554c: 40 00 3c 15 call 400645a0 <strerror>
<== NOT EXECUTED
40055550: 01 00 00 00 nop
<== NOT EXECUTED
40055554: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
40055558: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
4005555c: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40055560: 7f ff 99 fa call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055564: 90 12 23 d0 or %o0, 0x3d0, %o0 ! 40087bd0 <MSDOS_DOT_NAME+0x1aa8>
<== NOT EXECUTED
rtems_rfs_fs_close (fs);
40055568: 7f ff fc aa call 40054810 <rtems_rfs_fs_close>
<== NOT EXECUTED
4005556c: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
40055570: 30 bf ff eb b,a 4005551c <rtems_rfs_format+0xc84>
<== NOT EXECUTED
rc = rtems_rfs_bitmap_close (&bitmap);
40055574: 40 00 1a 6a call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
40055578: 01 00 00 00 nop
<== NOT EXECUTED
if (rc > 0)
4005557c: b6 92 20 00 orcc %o0, 0, %i3
<== NOT EXECUTED
40055580: 14 80 00 2a bg 40055628 <rtems_rfs_format+0xd90>
<== NOT EXECUTED
40055584: 80 8d 60 ff btst 0xff, %l5
<== NOT EXECUTED
if (initialise_inodes)
40055588: 02 80 00 5d be 400556fc <rtems_rfs_format+0xe64>
<== NOT EXECUTED
4005558c: e6 2f bf 48 stb %l3, [ %fp + -184 ]
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
40055590: 80 a5 a0 00 cmp %l6, 0
<== NOT EXECUTED
40055594: 04 80 00 5a ble 400556fc <rtems_rfs_format+0xe64>
<== NOT EXECUTED
40055598: b8 07 20 02 add %i4, 2, %i4
<== NOT EXECUTED
4005559c: 10 80 00 0a b 400555c4 <rtems_rfs_format+0xd2c>
<== NOT EXECUTED
400555a0: ac 05 80 1c add %l6, %i4, %l6
<== NOT EXECUTED
memset (rtems_rfs_buffer_data (&handle), 0xff, rtems_rfs_fs_block_size (fs));
400555a4: c2 07 bf 50 ld [ %fp + -176 ], %g1
<== NOT EXECUTED
400555a8: d4 07 bf 84 ld [ %fp + -124 ], %o2
<== NOT EXECUTED
400555ac: 40 00 2f 13 call 400611f8 <memset>
<== NOT EXECUTED
400555b0: d0 00 60 1c ld [ %g1 + 0x1c ], %o0
<== NOT EXECUTED
400555b4: b8 07 20 01 inc %i4
<== NOT EXECUTED
for (b = 0; b < blocks; b++)
400555b8: 80 a5 80 1c cmp %l6, %i4
<== NOT EXECUTED
400555bc: 02 80 00 50 be 400556fc <rtems_rfs_format+0xe64>
<== NOT EXECUTED
400555c0: e6 2f bf 48 stb %l3, [ %fp + -184 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &handle,
400555c4: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
400555c8: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
400555cc: 96 10 20 00 clr %o3
<== NOT EXECUTED
400555d0: 7f ff ef 6e call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
400555d4: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
memset (rtems_rfs_buffer_data (&handle), 0xff, rtems_rfs_fs_block_size (fs));
400555d8: 92 10 20 ff mov 0xff, %o1
<== NOT EXECUTED
if (rc > 0)
400555dc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400555e0: 04 bf ff f1 ble 400555a4 <rtems_rfs_format+0xd0c>
<== NOT EXECUTED
400555e4: b6 10 00 08 mov %o0, %i3
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400555e8: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
400555ec: 7f ff f0 2e call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400555f0: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("\nrtems-rfs: write-group: group %3d: block %" PRId32 " request failed: %d: %s\n",
400555f4: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
handle->dirty = false;
400555f8: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
400555fc: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
40055600: 40 00 3b e8 call 400645a0 <strerror>
<== NOT EXECUTED
40055604: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
40055608: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
4005560c: 98 10 00 08 mov %o0, %o4
<== NOT EXECUTED
40055610: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
40055614: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40055618: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
4005561c: 7f ff 99 cb call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055620: 90 12 23 20 or %o0, 0x320, %o0 ! 40087b20 <MSDOS_DOT_NAME+0x19f8>
<== NOT EXECUTED
40055624: 30 bf fe be b,a 4005511c <rtems_rfs_format+0x884>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40055628: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
4005562c: 7f ff f0 1e call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055630: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
printf ("\nrtems-rfs: write-group: group %3d: close inode" \
40055634: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
handle->dirty = false;
40055638: c0 2f bf 48 clrb [ %fp + -184 ]
<== NOT EXECUTED
handle->bnum = 0;
4005563c: c0 27 bf 4c clr [ %fp + -180 ]
<== NOT EXECUTED
40055640: 40 00 3b d8 call 400645a0 <strerror>
<== NOT EXECUTED
40055644: c0 27 bf 50 clr [ %fp + -176 ]
<== NOT EXECUTED
40055648: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
4005564c: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40055650: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40055654: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40055658: 7f ff 99 bc call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005565c: 90 12 22 d8 or %o0, 0x2d8, %o0 ! 40087ad8 <MSDOS_DOT_NAME+0x19b0>
<== NOT EXECUTED
40055660: 30 bf fe af b,a 4005511c <rtems_rfs_format+0x884>
<== NOT EXECUTED
rc = errno;
40055664: 40 00 1c ac call 4005c914 <__errno>
<== NOT EXECUTED
40055668: 01 00 00 00 nop
<== NOT EXECUTED
4005566c: f0 02 00 00 ld [ %o0 ], %i0
<== NOT EXECUTED
printf ("rtems-rfs: format: file system close failed: %d: %s\n",
40055670: 40 00 3b cc call 400645a0 <strerror>
<== NOT EXECUTED
40055674: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40055678: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
4005567c: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40055680: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055684: 7f ff 99 b1 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055688: 90 12 21 10 or %o0, 0x110, %o0 ! 40087d10 <MSDOS_DOT_NAME+0x1be8>
<== NOT EXECUTED
if (rc != 0)
4005568c: 10 bf ff 77 b 40055468 <rtems_rfs_format+0xbd0>
<== NOT EXECUTED
40055690: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
printf ("rtems-rfs: format: inode close failed: %d: %s\n",
40055694: 40 00 3b c3 call 400645a0 <strerror>
<== NOT EXECUTED
40055698: 01 00 00 00 nop
<== NOT EXECUTED
4005569c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400556a0: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400556a4: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
400556a8: 7f ff 99 a8 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400556ac: 90 12 20 e0 or %o0, 0xe0, %o0 ! 40087ce0 <MSDOS_DOT_NAME+0x1bb8>
<== NOT EXECUTED
400556b0: 30 bf ff 45 b,a 400553c4 <rtems_rfs_format+0xb2c>
<== NOT EXECUTED
printf ("rtems-rfs: format: directory add failed: %d: %s\n",
400556b4: 40 00 3b bb call 400645a0 <strerror>
<== NOT EXECUTED
400556b8: 01 00 00 00 nop
<== NOT EXECUTED
400556bc: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400556c0: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400556c4: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
400556c8: 7f ff 99 a0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400556cc: 90 12 20 a8 or %o0, 0xa8, %o0 ! 40087ca8 <MSDOS_DOT_NAME+0x1b80>
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &inode);
400556d0: 10 bf ff 38 b 400553b0 <rtems_rfs_format+0xb18>
<== NOT EXECUTED
400556d4: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
printf ("rtems-rfs: format: inode initialise failed: %d: %s\n",
400556d8: 40 00 3b b2 call 400645a0 <strerror>
<== NOT EXECUTED
400556dc: 01 00 00 00 nop
<== NOT EXECUTED
400556e0: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400556e4: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400556e8: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
400556ec: 7f ff 99 97 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400556f0: 90 12 20 70 or %o0, 0x70, %o0 ! 40087c70 <MSDOS_DOT_NAME+0x1b48>
<== NOT EXECUTED
rc = rtems_rfs_dir_add_entry (fs, &inode, ".", 1, ino);
400556f4: 10 bf ff 25 b 40055388 <rtems_rfs_format+0xaf0>
<== NOT EXECUTED
400556f8: d8 07 bf 48 ld [ %fp + -184 ], %o4
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400556fc: 92 07 bf 48 add %fp, -184, %o1
<== NOT EXECUTED
40055700: 7f ff ef e9 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055704: 90 07 bf 7c add %fp, -132, %o0
<== NOT EXECUTED
for (group = 0; group < fs.group_count; group++)
40055708: c2 07 bf a0 ld [ %fp + -96 ], %g1
<== NOT EXECUTED
4005570c: ba 07 60 01 inc %i5
<== NOT EXECUTED
40055710: 80 a0 40 1d cmp %g1, %i5
<== NOT EXECUTED
40055714: 04 bf fe f2 ble 400552dc <rtems_rfs_format+0xa44>
<== NOT EXECUTED
40055718: f6 07 bf a4 ld [ %fp + -92 ], %i3
<== NOT EXECUTED
if (group_base > rtems_rfs_fs_blocks (fs))
4005571c: c2 07 bf 80 ld [ %fp + -128 ], %g1
<== NOT EXECUTED
group_base = rtems_rfs_fs_block (fs, group, 0);
40055720: a0 5f 40 1b smul %i5, %i3, %l0
<== NOT EXECUTED
40055724: b8 04 20 01 add %l0, 1, %i4
<== NOT EXECUTED
if (group_base > rtems_rfs_fs_blocks (fs))
40055728: 80 a7 00 01 cmp %i4, %g1
<== NOT EXECUTED
4005572c: 18 bf fe 83 bgu 40055138 <rtems_rfs_format+0x8a0>
<== NOT EXECUTED
40055730: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
if (!rtems_rfs_write_group (&fs, group,
40055734: ea 0e 60 14 ldub [ %i1 + 0x14 ], %l5
<== NOT EXECUTED
40055738: 10 bf fe 59 b 4005509c <rtems_rfs_format+0x804>
<== NOT EXECUTED
4005573c: c4 0e 60 15 ldub [ %i1 + 0x15 ], %g2
<== NOT EXECUTED
printf ("rtems-rfs: format: inode open failed: %d: %s\n",
40055740: 40 00 3b 98 call 400645a0 <strerror>
<== NOT EXECUTED
40055744: 01 00 00 00 nop
<== NOT EXECUTED
40055748: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
4005574c: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40055750: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055754: 7f ff 99 7d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055758: 90 12 20 40 or %o0, 0x40, %o0 ! 40087c40 <MSDOS_DOT_NAME+0x1b18>
<== NOT EXECUTED
rtems_rfs_group_bitmap_free (fs, true, ino);
4005575c: d4 07 bf 48 ld [ %fp + -184 ], %o2
<== NOT EXECUTED
40055760: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
40055764: 40 00 01 9a call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
40055768: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
rtems_rfs_fs_close (fs);
4005576c: 7f ff fc 29 call 40054810 <rtems_rfs_fs_close>
<== NOT EXECUTED
40055770: d0 07 bf 44 ld [ %fp + -188 ], %o0
<== NOT EXECUTED
40055774: 30 bf ff 6a b,a 4005551c <rtems_rfs_format+0xc84>
<== NOT EXECUTED
printf ("rtems-rfs: media block is invalid: %" PRIu32 "\n",
40055778: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
4005577c: 7f ff 99 73 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055780: 90 12 21 70 or %o0, 0x170, %o0 ! 40087570 <MSDOS_DOT_NAME+0x1448>
<== NOT EXECUTED
errno = EINVAL;
40055784: 40 00 1c 64 call 4005c914 <__errno>
<== NOT EXECUTED
40055788: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
4005578c: 82 10 20 16 mov 0x16, %g1
<== NOT EXECUTED
40055790: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
40055794: 81 c7 e0 08 ret
<== NOT EXECUTED
40055798: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: format: setting block size failed: %d: %s\n",
4005579c: 40 00 3b 81 call 400645a0 <strerror>
<== NOT EXECUTED
400557a0: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
400557a4: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400557a8: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400557ac: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
400557b0: 7f ff 99 66 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400557b4: 90 12 23 e8 or %o0, 0x3e8, %o0 ! 400877e8 <MSDOS_DOT_NAME+0x16c0>
<== NOT EXECUTED
errno = rc;
400557b8: 40 00 1c 57 call 4005c914 <__errno>
<== NOT EXECUTED
400557bc: 01 00 00 00 nop
<== NOT EXECUTED
400557c0: fa 22 00 00 st %i5, [ %o0 ]
<== NOT EXECUTED
return -1;
400557c4: 81 c7 e0 08 ret
<== NOT EXECUTED
400557c8: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: format: buffer open failed: %d: %s\n",
400557cc: 40 00 3b 75 call 400645a0 <strerror>
<== NOT EXECUTED
400557d0: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
400557d4: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400557d8: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400557dc: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
400557e0: 7f ff 99 5a call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400557e4: 90 12 21 40 or %o0, 0x140, %o0 ! 40087540 <MSDOS_DOT_NAME+0x1418>
<== NOT EXECUTED
errno = rc;
400557e8: 40 00 1c 4b call 4005c914 <__errno>
<== NOT EXECUTED
400557ec: 01 00 00 00 nop
<== NOT EXECUTED
400557f0: fa 22 00 00 st %i5, [ %o0 ]
<== NOT EXECUTED
return -1;
400557f4: 81 c7 e0 08 ret
<== NOT EXECUTED
400557f8: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: format: buffer close failed: %d: %s\n",
400557fc: 40 00 3b 69 call 400645a0 <strerror>
<== NOT EXECUTED
40055800: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
40055804: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40055808: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
4005580c: 11 10 02 1e sethi %hi(0x40087800), %o0
<== NOT EXECUTED
40055810: 7f ff 99 4e call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055814: 90 12 23 68 or %o0, 0x368, %o0 ! 40087b68 <MSDOS_DOT_NAME+0x1a40>
<== NOT EXECUTED
errno = rc;
40055818: 40 00 1c 3f call 4005c914 <__errno>
<== NOT EXECUTED
4005581c: 01 00 00 00 nop
<== NOT EXECUTED
40055820: fa 22 00 00 st %i5, [ %o0 ]
<== NOT EXECUTED
return -1;
40055824: 81 c7 e0 08 ret
<== NOT EXECUTED
40055828: 81 e8 00 00 restore
<== NOT EXECUTED
40054810 <rtems_rfs_fs_close>:
int
rtems_rfs_fs_close (rtems_rfs_file_system* fs)
{
40054810: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
int group;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_CLOSE))
40054814: 90 10 20 00 clr %o0
<== NOT EXECUTED
40054818: 92 10 20 02 mov 2, %o1
<== NOT EXECUTED
4005481c: 40 00 0d e1 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054820: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
40054824: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054828: 12 80 00 18 bne 40054888 <rtems_rfs_fs_close+0x78>
<== NOT EXECUTED
4005482c: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
printf ("rtems-rfs: close\n");
for (group = 0; group < fs->group_count; group++)
40054830: c2 07 60 24 ld [ %i5 + 0x24 ], %g1
<== NOT EXECUTED
40054834: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40054838: 04 80 00 0d ble 4005486c <rtems_rfs_fs_close+0x5c>
<== NOT EXECUTED
4005483c: 01 00 00 00 nop
<== NOT EXECUTED
40054840: b6 10 20 00 clr %i3 ! 0 <PROM_START>
<== NOT EXECUTED
40054844: b8 10 20 00 clr %i4
<== NOT EXECUTED
rtems_rfs_group_close (fs, &fs->groups[group]);
40054848: d2 07 60 20 ld [ %i5 + 0x20 ], %o1
<== NOT EXECUTED
4005484c: 92 02 40 1b add %o1, %i3, %o1
<== NOT EXECUTED
40054850: 40 00 04 85 call 40055a64 <rtems_rfs_group_close>
<== NOT EXECUTED
40054854: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
for (group = 0; group < fs->group_count; group++)
40054858: c2 07 60 24 ld [ %i5 + 0x24 ], %g1
<== NOT EXECUTED
4005485c: b8 07 20 01 inc %i4
<== NOT EXECUTED
40054860: 80 a0 40 1c cmp %g1, %i4
<== NOT EXECUTED
40054864: 14 bf ff f9 bg 40054848 <rtems_rfs_fs_close+0x38>
<== NOT EXECUTED
40054868: b6 06 e0 50 add %i3, 0x50, %i3
<== NOT EXECUTED
rtems_rfs_buffer_close (fs);
4005486c: 7f ff f4 8a call 40051a94 <rtems_rfs_buffer_close>
<== NOT EXECUTED
40054870: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
free (fs);
return 0;
}
40054874: b0 10 20 00 clr %i0
<== NOT EXECUTED
free (fs);
40054878: 7f fe db 82 call 4000b680 <free>
<== NOT EXECUTED
4005487c: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
}
40054880: 81 c7 e0 08 ret
<== NOT EXECUTED
40054884: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: close\n");
40054888: 7f ff 9d 3f call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4005488c: 90 12 21 10 or %o0, 0x110, %o0
<== NOT EXECUTED
for (group = 0; group < fs->group_count; group++)
40054890: 10 bf ff e9 b 40054834 <rtems_rfs_fs_close+0x24>
<== NOT EXECUTED
40054894: c2 07 60 24 ld [ %i5 + 0x24 ], %g1
<== NOT EXECUTED
40053fcc <rtems_rfs_fs_media_size>:
uint64_t
rtems_rfs_fs_media_size (rtems_rfs_file_system* fs)
{
uint64_t media_blocks = (uint64_t) rtems_rfs_fs_media_blocks (fs);
40053fcc: c2 02 20 10 ld [ %o0 + 0x10 ], %g1
<== NOT EXECUTED
uint64_t media_block_size = (uint64_t) rtems_rfs_fs_media_block_size (fs);
return media_blocks * media_block_size;
40053fd0: d0 00 60 1c ld [ %g1 + 0x1c ], %o0
<== NOT EXECUTED
40053fd4: c2 00 60 20 ld [ %g1 + 0x20 ], %g1
<== NOT EXECUTED
}
40053fd8: 92 52 00 01 umul %o0, %g1, %o1
<== NOT EXECUTED
40053fdc: 91 40 00 00 rd %y, %o0
<== NOT EXECUTED
40053fe0: 81 c3 e0 08 retl
<== NOT EXECUTED
40053fe4: 01 00 00 00 nop
<== NOT EXECUTED
40053fe8 <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)
{
40053fe8: 9d e3 bf 78 save %sp, -136, %sp
<== NOT EXECUTED
#endif
rtems_rfs_inode_handle inode;
uint16_t mode;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40053fec: 90 10 20 00 clr %o0
<== NOT EXECUTED
40053ff0: 40 00 0f ec call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40053ff4: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40053ff8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40053ffc: 12 80 00 ef bne 400543b8 <rtems_rfs_fs_open+0x3d0>
<== NOT EXECUTED
40054000: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
printf ("rtems-rfs: open: %s\n", name);
*fs = malloc (sizeof (rtems_rfs_file_system));
40054004: 7f fe df 62 call 4000bd8c <malloc>
<== NOT EXECUTED
40054008: 90 10 20 84 mov 0x84, %o0
<== NOT EXECUTED
4005400c: d0 27 00 00 st %o0, [ %i4 ]
<== NOT EXECUTED
if (!*fs)
40054010: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054014: 02 80 01 e1 be 40054798 <rtems_rfs_fs_open+0x7b0>
<== NOT EXECUTED
40054018: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
printf ("rtems-rfs: open: no memory for file system data\n");
errno = ENOMEM;
return -1;
}
memset (*fs, 0, sizeof (rtems_rfs_file_system));
4005401c: 94 10 20 7c mov 0x7c, %o2
<== NOT EXECUTED
40054020: 92 10 20 00 clr %o1
<== NOT EXECUTED
40054024: 40 00 34 75 call 400611f8 <memset>
<== NOT EXECUTED
40054028: 90 02 20 04 add %o0, 4, %o0
<== NOT EXECUTED
return &the_chain->Tail.Node;
4005402c: 84 07 60 44 add %i5, 0x44, %g2
<== NOT EXECUTED
40054030: 82 07 60 48 add %i5, 0x48, %g1
<== NOT EXECUTED
tail->previous = head;
40054034: c4 27 60 4c st %g2, [ %i5 + 0x4c ]
<== NOT EXECUTED
return &the_chain->Tail.Node;
40054038: 84 07 60 54 add %i5, 0x54, %g2
<== NOT EXECUTED
head->next = tail;
4005403c: c2 27 60 44 st %g1, [ %i5 + 0x44 ]
<== NOT EXECUTED
return &the_chain->Tail.Node;
40054040: 82 07 60 58 add %i5, 0x58, %g1
<== NOT EXECUTED
tail->previous = head;
40054044: c4 27 60 5c st %g2, [ %i5 + 0x5c ]
<== NOT EXECUTED
return &the_chain->Tail.Node;
40054048: 84 07 60 64 add %i5, 0x64, %g2
<== NOT EXECUTED
head->next = tail;
4005404c: c2 27 60 54 st %g1, [ %i5 + 0x54 ]
<== NOT EXECUTED
return &the_chain->Tail.Node;
40054050: 82 07 60 68 add %i5, 0x68, %g1
<== NOT EXECUTED
tail->previous = head;
40054054: c4 27 60 6c st %g2, [ %i5 + 0x6c ]
<== NOT EXECUTED
return &the_chain->Tail.Node;
40054058: 84 07 60 74 add %i5, 0x74, %g2
<== NOT EXECUTED
head->next = tail;
4005405c: c2 27 60 64 st %g1, [ %i5 + 0x64 ]
<== NOT EXECUTED
return &the_chain->Tail.Node;
40054060: 82 07 60 78 add %i5, 0x78, %g1
<== NOT EXECUTED
(*fs)->user = user;
40054064: f2 27 60 80 st %i1, [ %i5 + 0x80 ]
<== NOT EXECUTED
#endif
/*
* Open the buffer interface.
*/
rc = rtems_rfs_buffer_open (name, *fs);
40054068: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
tail->previous = head;
4005406c: c4 27 60 7c st %g2, [ %i5 + 0x7c ]
<== NOT EXECUTED
40054070: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
head->next = tail;
40054074: c2 27 60 74 st %g1, [ %i5 + 0x74 ]
<== NOT EXECUTED
(*fs)->max_held_buffers = max_held_buffers;
40054078: f6 27 60 40 st %i3, [ %i5 + 0x40 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_open (name, *fs);
4005407c: 7f ff f5 93 call 400516c8 <rtems_rfs_buffer_open>
<== NOT EXECUTED
40054080: f4 27 40 00 st %i2, [ %i5 ]
<== NOT EXECUTED
if (rc > 0)
40054084: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40054088: 14 80 01 7c bg 40054678 <rtems_rfs_fs_open+0x690>
<== NOT EXECUTED
4005408c: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
rc, strerror (rc));
errno = rc;
return -1;
}
rc = rtems_rfs_fs_read_superblock (*fs);
40054090: f6 07 00 00 ld [ %i4 ], %i3
<== NOT EXECUTED
handle->dirty = false;
40054094: c0 2f bf d8 clrb [ %fp + -40 ]
<== NOT EXECUTED
handle->bnum = 0;
40054098: c0 27 bf dc clr [ %fp + -36 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &handle, 0, true);
4005409c: 94 10 20 00 clr %o2
<== NOT EXECUTED
handle->buffer = NULL;
400540a0: c0 27 bf e0 clr [ %fp + -32 ]
<== NOT EXECUTED
400540a4: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
400540a8: 7f ff f4 b8 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
400540ac: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
if (rc > 0)
400540b0: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400540b4: 14 80 00 ac bg 40054364 <rtems_rfs_fs_open+0x37c>
<== NOT EXECUTED
400540b8: c2 07 bf e0 ld [ %fp + -32 ], %g1
<== NOT EXECUTED
sb = rtems_rfs_buffer_data (&handle);
400540bc: fa 00 60 1c ld [ %g1 + 0x1c ], %i5
<== NOT EXECUTED
if (read_sb (RTEMS_RFS_SB_OFFSET_MAGIC) != RTEMS_RFS_SB_MAGIC)
400540c0: c8 0f 40 00 ldub [ %i5 ], %g4
<== NOT EXECUTED
400540c4: c4 0f 60 01 ldub [ %i5 + 1 ], %g2
<== NOT EXECUTED
400540c8: c2 0f 60 02 ldub [ %i5 + 2 ], %g1
<== NOT EXECUTED
400540cc: c6 0f 60 03 ldub [ %i5 + 3 ], %g3
<== NOT EXECUTED
400540d0: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
400540d4: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
400540d8: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
400540dc: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
400540e0: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
400540e4: 05 0a 02 48 sethi %hi(0x28092000), %g2
<== NOT EXECUTED
400540e8: 82 10 c0 01 or %g3, %g1, %g1
<== NOT EXECUTED
400540ec: 84 10 a0 01 or %g2, 1, %g2
<== NOT EXECUTED
400540f0: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
400540f4: 32 80 00 b5 bne,a 400543c8 <rtems_rfs_fs_open+0x3e0>
<== NOT EXECUTED
400540f8: 90 10 20 00 clr %o0
<== NOT EXECUTED
fs->blocks = read_sb (RTEMS_RFS_SB_OFFSET_BLOCKS);
400540fc: c8 0f 60 0c ldub [ %i5 + 0xc ], %g4
<== NOT EXECUTED
40054100: c6 0f 60 0d ldub [ %i5 + 0xd ], %g3
<== NOT EXECUTED
40054104: c2 0f 60 0e ldub [ %i5 + 0xe ], %g1
<== NOT EXECUTED
40054108: c4 0f 60 0f ldub [ %i5 + 0xf ], %g2
<== NOT EXECUTED
4005410c: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
40054110: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40054114: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40054118: 86 10 c0 04 or %g3, %g4, %g3
<== NOT EXECUTED
4005411c: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
40054120: 84 10 80 01 or %g2, %g1, %g2
<== NOT EXECUTED
40054124: c4 26 e0 04 st %g2, [ %i3 + 4 ]
<== NOT EXECUTED
fs->block_size = read_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE);
40054128: f2 0f 60 0b ldub [ %i5 + 0xb ], %i1
<== NOT EXECUTED
4005412c: c8 0f 60 08 ldub [ %i5 + 8 ], %g4
<== NOT EXECUTED
40054130: c6 0f 60 09 ldub [ %i5 + 9 ], %g3
<== NOT EXECUTED
40054134: c2 0f 60 0a ldub [ %i5 + 0xa ], %g1
<== NOT EXECUTED
uint64_t media_blocks = (uint64_t) rtems_rfs_fs_media_blocks (fs);
40054138: f4 06 e0 10 ld [ %i3 + 0x10 ], %i2
<== NOT EXECUTED
fs->block_size = read_sb (RTEMS_RFS_SB_OFFSET_BLOCK_SIZE);
4005413c: 89 29 20 18 sll %g4, 0x18, %g4
<== NOT EXECUTED
40054140: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40054144: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40054148: 86 10 c0 04 or %g3, %g4, %g3
<== NOT EXECUTED
4005414c: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
40054150: 82 16 40 01 or %i1, %g1, %g1
<== NOT EXECUTED
40054154: c2 26 e0 08 st %g1, [ %i3 + 8 ]
<== NOT EXECUTED
return blocks * block_size;
40054158: 86 50 80 01 umul %g2, %g1, %g3
<== NOT EXECUTED
4005415c: 85 40 00 00 rd %y, %g2
<== NOT EXECUTED
return media_blocks * media_block_size;
40054160: f0 06 a0 1c ld [ %i2 + 0x1c ], %i0
<== NOT EXECUTED
40054164: c8 06 a0 20 ld [ %i2 + 0x20 ], %g4
<== NOT EXECUTED
40054168: b2 56 00 04 umul %i0, %g4, %i1
<== NOT EXECUTED
4005416c: b1 40 00 00 rd %y, %i0
<== NOT EXECUTED
if (rtems_rfs_fs_size(fs) > rtems_rfs_fs_media_size (fs))
40054170: 80 a0 80 18 cmp %g2, %i0
<== NOT EXECUTED
40054174: 38 80 00 d0 bgu,a 400544b4 <rtems_rfs_fs_open+0x4cc>
<== NOT EXECUTED
40054178: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005417c: 02 80 00 cb be 400544a8 <rtems_rfs_fs_open+0x4c0>
<== NOT EXECUTED
40054180: 80 a0 c0 19 cmp %g3, %i1
<== NOT EXECUTED
if (read_sb (RTEMS_RFS_SB_OFFSET_INODE_SIZE) != RTEMS_RFS_INODE_SIZE)
40054184: f4 0f 60 24 ldub [ %i5 + 0x24 ], %i2
<== NOT EXECUTED
40054188: c6 0f 60 25 ldub [ %i5 + 0x25 ], %g3
<== NOT EXECUTED
4005418c: c4 0f 60 26 ldub [ %i5 + 0x26 ], %g2
<== NOT EXECUTED
40054190: c8 0f 60 27 ldub [ %i5 + 0x27 ], %g4
<== NOT EXECUTED
40054194: b5 2e a0 18 sll %i2, 0x18, %i2
<== NOT EXECUTED
40054198: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
4005419c: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
400541a0: 86 10 c0 1a or %g3, %i2, %g3
<== NOT EXECUTED
400541a4: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
400541a8: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
400541ac: 80 a0 a0 38 cmp %g2, 0x38
<== NOT EXECUTED
400541b0: 32 80 00 a9 bne,a 40054454 <rtems_rfs_fs_open+0x46c>
<== NOT EXECUTED
400541b4: 90 10 20 00 clr %o0
<== NOT EXECUTED
fs->bad_blocks = read_sb (RTEMS_RFS_SB_OFFSET_BAD_BLOCKS);
400541b8: c8 0f 60 13 ldub [ %i5 + 0x13 ], %g4
<== NOT EXECUTED
400541bc: f4 0f 60 10 ldub [ %i5 + 0x10 ], %i2
<== NOT EXECUTED
400541c0: c6 0f 60 11 ldub [ %i5 + 0x11 ], %g3
<== NOT EXECUTED
400541c4: c4 0f 60 12 ldub [ %i5 + 0x12 ], %g2
<== NOT EXECUTED
400541c8: b5 2e a0 18 sll %i2, 0x18, %i2
<== NOT EXECUTED
400541cc: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
400541d0: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
400541d4: 86 10 c0 1a or %g3, %i2, %g3
<== NOT EXECUTED
400541d8: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
400541dc: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
400541e0: c4 26 e0 18 st %g2, [ %i3 + 0x18 ]
<== NOT EXECUTED
rtems_rfs_fs_block_size (fs) / sizeof (rtems_rfs_inode_block);
400541e4: 87 30 60 02 srl %g1, 2, %g3
<== NOT EXECUTED
fs->max_name_length = read_sb (RTEMS_RFS_SB_OFFSET_MAX_NAME_LENGTH);
400541e8: f4 0f 60 17 ldub [ %i5 + 0x17 ], %i2
<== NOT EXECUTED
400541ec: f2 0f 60 14 ldub [ %i5 + 0x14 ], %i1
<== NOT EXECUTED
400541f0: c8 0f 60 15 ldub [ %i5 + 0x15 ], %g4
<== NOT EXECUTED
400541f4: c4 0f 60 16 ldub [ %i5 + 0x16 ], %g2
<== NOT EXECUTED
400541f8: b3 2e 60 18 sll %i1, 0x18, %i1
<== NOT EXECUTED
400541fc: 89 29 20 10 sll %g4, 0x10, %g4
<== NOT EXECUTED
40054200: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40054204: 88 11 00 19 or %g4, %i1, %g4
<== NOT EXECUTED
40054208: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
4005420c: 84 16 80 02 or %i2, %g2, %g2
<== NOT EXECUTED
40054210: c4 26 e0 1c st %g2, [ %i3 + 0x1c ]
<== NOT EXECUTED
fs->blocks_per_block * fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;
40054214: b2 58 c0 03 smul %g3, %g3, %i1
<== NOT EXECUTED
fs->group_count = read_sb (RTEMS_RFS_SB_OFFSET_GROUPS);
40054218: f0 0f 60 1b ldub [ %i5 + 0x1b ], %i0
<== NOT EXECUTED
4005421c: f4 0f 60 18 ldub [ %i5 + 0x18 ], %i2
<== NOT EXECUTED
40054220: c8 0f 60 19 ldub [ %i5 + 0x19 ], %g4
<== NOT EXECUTED
40054224: c4 0f 60 1a ldub [ %i5 + 0x1a ], %g2
<== NOT EXECUTED
40054228: b5 2e a0 18 sll %i2, 0x18, %i2
<== NOT EXECUTED
4005422c: 89 29 20 10 sll %g4, 0x10, %g4
<== NOT EXECUTED
40054230: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40054234: 88 11 00 1a or %g4, %i2, %g4
<== NOT EXECUTED
40054238: 84 10 80 04 or %g2, %g4, %g2
<== NOT EXECUTED
4005423c: 84 16 00 02 or %i0, %g2, %g2
<== NOT EXECUTED
40054240: c4 26 e0 24 st %g2, [ %i3 + 0x24 ]
<== NOT EXECUTED
fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;
40054244: 9b 28 e0 02 sll %g3, 2, %o5
<== NOT EXECUTED
fs->group_blocks = read_sb (RTEMS_RFS_SB_OFFSET_GROUP_BLOCKS);
40054248: de 0f 60 1c ldub [ %i5 + 0x1c ], %o7
<== NOT EXECUTED
4005424c: f4 0f 60 1d ldub [ %i5 + 0x1d ], %i2
<== NOT EXECUTED
40054250: c8 0f 60 1e ldub [ %i5 + 0x1e ], %g4
<== NOT EXECUTED
40054254: f0 0f 60 1f ldub [ %i5 + 0x1f ], %i0
<== NOT EXECUTED
40054258: 9f 2b e0 18 sll %o7, 0x18, %o7
<== NOT EXECUTED
4005425c: b5 2e a0 10 sll %i2, 0x10, %i2
<== NOT EXECUTED
40054260: 89 29 20 08 sll %g4, 8, %g4
<== NOT EXECUTED
40054264: b4 16 80 0f or %i2, %o7, %i2
<== NOT EXECUTED
40054268: 88 11 00 1a or %g4, %i2, %g4
<== NOT EXECUTED
4005426c: b0 16 00 04 or %i0, %g4, %i0
<== NOT EXECUTED
40054270: f0 26 e0 28 st %i0, [ %i3 + 0x28 ]
<== NOT EXECUTED
fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;
40054274: 9a 03 40 03 add %o5, %g3, %o5
<== NOT EXECUTED
fs->group_inodes = read_sb (RTEMS_RFS_SB_OFFSET_GROUP_INODES);
40054278: d8 0f 60 20 ldub [ %i5 + 0x20 ], %o4
<== NOT EXECUTED
4005427c: f4 0f 60 21 ldub [ %i5 + 0x21 ], %i2
<== NOT EXECUTED
40054280: c8 0f 60 22 ldub [ %i5 + 0x22 ], %g4
<== NOT EXECUTED
40054284: de 0f 60 23 ldub [ %i5 + 0x23 ], %o7
<== NOT EXECUTED
40054288: 99 2b 20 18 sll %o4, 0x18, %o4
<== NOT EXECUTED
4005428c: bb 2e a0 10 sll %i2, 0x10, %i5
<== NOT EXECUTED
40054290: ba 17 40 0c or %i5, %o4, %i5
<== NOT EXECUTED
40054294: 89 29 20 08 sll %g4, 8, %g4
<== NOT EXECUTED
fs->blocks_per_block * fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;
40054298: b5 2e 60 02 sll %i1, 2, %i2
<== NOT EXECUTED
fs->group_inodes = read_sb (RTEMS_RFS_SB_OFFSET_GROUP_INODES);
4005429c: 88 11 00 1d or %g4, %i5, %g4
<== NOT EXECUTED
fs->blocks_per_block * fs->blocks_per_block * RTEMS_RFS_INODE_BLOCKS;
400542a0: b2 06 80 19 add %i2, %i1, %i1
<== NOT EXECUTED
fs->group_inodes = read_sb (RTEMS_RFS_SB_OFFSET_GROUP_INODES);
400542a4: 88 13 c0 04 or %o7, %g4, %g4
<== NOT EXECUTED
fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;
400542a8: bb 30 60 03 srl %g1, 3, %i5
<== NOT EXECUTED
fs->inodes = fs->group_count * fs->group_inodes;
400542ac: 84 58 80 04 smul %g2, %g4, %g2
<== NOT EXECUTED
fs->blocks_per_block =
400542b0: c6 26 e0 34 st %g3, [ %i3 + 0x34 ]
<== NOT EXECUTED
fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;
400542b4: 07 09 24 92 sethi %hi(0x24924800), %g3
<== NOT EXECUTED
fs->group_inodes = read_sb (RTEMS_RFS_SB_OFFSET_GROUP_INODES);
400542b8: c8 26 e0 2c st %g4, [ %i3 + 0x2c ]
<== NOT EXECUTED
fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;
400542bc: 86 10 e1 25 or %g3, 0x125, %g3
<== NOT EXECUTED
fs->block_map_singly_blocks =
400542c0: da 26 e0 38 st %o5, [ %i3 + 0x38 ]
<== NOT EXECUTED
fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;
400542c4: 80 57 40 03 umul %i5, %g3, %g0
<== NOT EXECUTED
400542c8: 87 40 00 00 rd %y, %g3
<== NOT EXECUTED
fs->block_map_doubly_blocks =
400542cc: f2 26 e0 3c st %i1, [ %i3 + 0x3c ]
<== NOT EXECUTED
rtems_rfs_bitmap_numof_bits (rtems_rfs_fs_block_size (fs)))
400542d0: 83 28 60 03 sll %g1, 3, %g1
<== NOT EXECUTED
fs->inodes = fs->group_count * fs->group_inodes;
400542d4: c4 26 e0 14 st %g2, [ %i3 + 0x14 ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400542d8: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
fs->inodes_per_block = fs->block_size / RTEMS_RFS_INODE_SIZE;
400542dc: c6 26 e0 30 st %g3, [ %i3 + 0x30 ]
<== NOT EXECUTED
if (fs->group_blocks >
400542e0: 80 a6 00 01 cmp %i0, %g1
<== NOT EXECUTED
400542e4: 18 80 00 46 bgu 400543fc <rtems_rfs_fs_open+0x414>
<== NOT EXECUTED
400542e8: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
400542ec: 7f ff f4 ee call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400542f0: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_buffer_setblksize (fs, rtems_rfs_fs_block_size (fs));
400542f4: d2 06 e0 08 ld [ %i3 + 8 ], %o1
<== NOT EXECUTED
400542f8: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
handle->dirty = false;
400542fc: c0 2f bf d8 clrb [ %fp + -40 ]
<== NOT EXECUTED
handle->bnum = 0;
40054300: c0 27 bf dc clr [ %fp + -36 ]
<== NOT EXECUTED
40054304: 7f ff f5 a3 call 40051990 <rtems_rfs_buffer_setblksize>
<== NOT EXECUTED
40054308: c0 27 bf e0 clr [ %fp + -32 ]
<== NOT EXECUTED
if (rc > 0)
4005430c: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40054310: 04 80 00 7b ble 400544fc <rtems_rfs_fs_open+0x514>
<== NOT EXECUTED
40054314: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40054318: 7f ff f4 e3 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
4005431c: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054320: 90 10 20 00 clr %o0
<== NOT EXECUTED
40054324: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
handle->dirty = false;
40054328: c0 2f bf d8 clrb [ %fp + -40 ]
<== NOT EXECUTED
handle->bnum = 0;
4005432c: c0 27 bf dc clr [ %fp + -36 ]
<== NOT EXECUTED
40054330: 40 00 0f 1c call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054334: c0 27 bf e0 clr [ %fp + -32 ]
<== NOT EXECUTED
40054338: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005433c: 02 80 00 10 be 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
40054340: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: invalid superblock block size%d: %s\n",
40054344: 40 00 40 97 call 400645a0 <strerror>
<== NOT EXECUTED
40054348: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
4005434c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40054350: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40054354: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40054358: 7f ff 9e 7c call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005435c: 90 12 23 90 or %o0, 0x390, %o0 ! 40087390 <MSDOS_DOT_NAME+0x1268>
<== NOT EXECUTED
40054360: 30 80 00 07 b,a 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054364: 90 10 20 00 clr %o0
<== NOT EXECUTED
40054368: 40 00 0f 0e call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005436c: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40054370: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054374: 12 80 00 30 bne 40054434 <rtems_rfs_fs_open+0x44c>
<== NOT EXECUTED
40054378: 01 00 00 00 nop
<== NOT EXECUTED
if (rc > 0)
{
rtems_rfs_buffer_close (*fs);
4005437c: 7f ff f5 c6 call 40051a94 <rtems_rfs_buffer_close>
<== NOT EXECUTED
40054380: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
free (*fs);
40054384: 7f fe dc bf call 4000b680 <free>
<== NOT EXECUTED
40054388: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
4005438c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40054390: 40 00 0f 04 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054394: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40054398: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005439c: 12 80 00 50 bne 400544dc <rtems_rfs_fs_open+0x4f4>
<== NOT EXECUTED
400543a0: 01 00 00 00 nop
<== NOT EXECUTED
{
rtems_rfs_buffer_close (*fs);
free (*fs);
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
printf ("rtems-rfs: open: closing root inode: %d: %s\n", rc, strerror (rc));
errno = rc;
400543a4: 40 00 21 5c call 4005c914 <__errno>
<== NOT EXECUTED
400543a8: b0 10 3f ff mov -1, %i0 ! ffffffff <RAM_END+0xbfbfffff>
<== NOT EXECUTED
400543ac: fa 22 00 00 st %i5, [ %o0 ]
<== NOT EXECUTED
return -1;
400543b0: 81 c7 e0 08 ret
<== NOT EXECUTED
400543b4: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: open: %s\n", name);
400543b8: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
400543bc: 7f ff 9e 63 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400543c0: 90 12 21 d0 or %o0, 0x1d0, %o0 ! 400871d0 <MSDOS_DOT_NAME+0x10a8>
<== NOT EXECUTED
400543c4: 30 bf ff 10 b,a 40054004 <rtems_rfs_fs_open+0x1c>
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
400543c8: 40 00 0e f6 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400543cc: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
400543d0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400543d4: 22 80 00 06 be,a 400543ec <rtems_rfs_fs_open+0x404>
<== NOT EXECUTED
400543d8: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: invalid superblock, bad magic\n");
400543dc: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
400543e0: 7f ff 9e 69 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
400543e4: 90 12 22 80 or %o0, 0x280, %o0 ! 40087280 <MSDOS_DOT_NAME+0x1158>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400543e8: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
400543ec: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
400543f0: 7f ff f4 ad call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400543f4: ba 10 20 05 mov 5, %i5
<== NOT EXECUTED
400543f8: 30 bf ff e1 b,a 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
400543fc: 7f ff f4 aa call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40054400: ba 10 20 05 mov 5, %i5
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054404: 90 10 20 00 clr %o0
<== NOT EXECUTED
40054408: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
handle->dirty = false;
4005440c: c0 2f bf d8 clrb [ %fp + -40 ]
<== NOT EXECUTED
handle->bnum = 0;
40054410: c0 27 bf dc clr [ %fp + -36 ]
<== NOT EXECUTED
40054414: 40 00 0e e3 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054418: c0 27 bf e0 clr [ %fp + -32 ]
<== NOT EXECUTED
4005441c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054420: 02 bf ff d7 be 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
40054424: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: groups blocks larger than block bits\n");
40054428: 7f ff 9e 57 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4005442c: 90 12 23 48 or %o0, 0x348, %o0 ! 40087348 <MSDOS_DOT_NAME+0x1220>
<== NOT EXECUTED
40054430: 30 bf ff d3 b,a 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: request failed%d: %s\n",
40054434: 40 00 40 5b call 400645a0 <strerror>
<== NOT EXECUTED
40054438: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
4005443c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40054440: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40054444: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40054448: 7f ff 9e 40 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005444c: 90 12 22 48 or %o0, 0x248, %o0 ! 40087248 <MSDOS_DOT_NAME+0x1120>
<== NOT EXECUTED
40054450: 30 bf ff cb b,a 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054454: 40 00 0e d3 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054458: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
4005445c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054460: 22 bf ff e3 be,a 400543ec <rtems_rfs_fs_open+0x404>
<== NOT EXECUTED
40054464: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: inode size mismatch: fs:%" PRId32 " target:%" PRId32 "\n",
40054468: c6 0f 60 04 ldub [ %i5 + 4 ], %g3
<== NOT EXECUTED
4005446c: c4 0f 60 05 ldub [ %i5 + 5 ], %g2
<== NOT EXECUTED
40054470: c2 0f 60 06 ldub [ %i5 + 6 ], %g1
<== NOT EXECUTED
40054474: d2 0f 60 07 ldub [ %i5 + 7 ], %o1
<== NOT EXECUTED
40054478: 87 28 e0 18 sll %g3, 0x18, %g3
<== NOT EXECUTED
4005447c: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40054480: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40054484: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40054488: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
4005448c: 94 10 20 00 clr %o2
<== NOT EXECUTED
40054490: 92 12 40 01 or %o1, %g1, %o1
<== NOT EXECUTED
40054494: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
40054498: 7f ff 9e 2c call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005449c: 90 12 23 00 or %o0, 0x300, %o0 ! 40087300 <MSDOS_DOT_NAME+0x11d8>
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400544a0: 10 bf ff d3 b 400543ec <rtems_rfs_fs_open+0x404>
<== NOT EXECUTED
400544a4: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
if (rtems_rfs_fs_size(fs) > rtems_rfs_fs_media_size (fs))
400544a8: 28 bf ff 38 bleu,a 40054188 <rtems_rfs_fs_open+0x1a0>
<== NOT EXECUTED
400544ac: f4 0f 60 24 ldub [ %i5 + 0x24 ], %i2
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
400544b0: 90 10 20 00 clr %o0
<== NOT EXECUTED
400544b4: 40 00 0e bb call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400544b8: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
400544bc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400544c0: 22 bf ff cb be,a 400543ec <rtems_rfs_fs_open+0x404>
<== NOT EXECUTED
400544c4: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: invalid superblock block/size count\n");
400544c8: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
400544cc: 7f ff 9e 2e call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
400544d0: 90 12 22 c0 or %o0, 0x2c0, %o0 ! 400872c0 <MSDOS_DOT_NAME+0x1198>
<== NOT EXECUTED
400544d4: 10 bf ff c6 b 400543ec <rtems_rfs_fs_open+0x404>
<== NOT EXECUTED
400544d8: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: open: reading superblock: %d: %s\n",
400544dc: 40 00 40 31 call 400645a0 <strerror>
<== NOT EXECUTED
400544e0: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
400544e4: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400544e8: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400544ec: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
400544f0: 7f ff 9e 16 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400544f4: 90 12 20 50 or %o0, 0x50, %o0 ! 40087450 <MSDOS_DOT_NAME+0x1328>
<== NOT EXECUTED
400544f8: 30 bf ff ab b,a 400543a4 <rtems_rfs_fs_open+0x3bc>
<== NOT EXECUTED
fs->groups = calloc (fs->group_count, sizeof (rtems_rfs_group));
400544fc: fa 06 e0 24 ld [ %i3 + 0x24 ], %i5
<== NOT EXECUTED
40054500: 92 10 20 50 mov 0x50, %o1
<== NOT EXECUTED
40054504: 7f fe d7 bf call 4000a400 <calloc>
<== NOT EXECUTED
40054508: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
if (!fs->groups)
4005450c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054510: 02 80 00 b0 be 400547d0 <rtems_rfs_fs_open+0x7e8>
<== NOT EXECUTED
40054514: d0 26 e0 20 st %o0, [ %i3 + 0x20 ]
<== NOT EXECUTED
for (group = 0; group < fs->group_count; group++)
40054518: b2 10 20 00 clr %i1
<== NOT EXECUTED
4005451c: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
40054520: 14 80 00 09 bg 40054544 <rtems_rfs_fs_open+0x55c>
<== NOT EXECUTED
40054524: b4 10 20 00 clr %i2
<== NOT EXECUTED
rc = rtems_rfs_inode_open (*fs, RTEMS_RFS_ROOT_INO, &inode, true);
40054528: 10 80 00 33 b 400545f4 <rtems_rfs_fs_open+0x60c>
<== NOT EXECUTED
4005452c: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
for (group = 0; group < fs->group_count; group++)
40054530: b4 06 a0 01 inc %i2
<== NOT EXECUTED
40054534: 80 a6 80 01 cmp %i2, %g1
<== NOT EXECUTED
40054538: 16 80 00 2e bge 400545f0 <rtems_rfs_fs_open+0x608>
<== NOT EXECUTED
4005453c: b2 06 60 50 add %i1, 0x50, %i1
<== NOT EXECUTED
40054540: d0 06 e0 20 ld [ %i3 + 0x20 ], %o0
<== NOT EXECUTED
rtems_rfs_fs_block (fs, group, 0),
40054544: d4 06 e0 28 ld [ %i3 + 0x28 ], %o2
<== NOT EXECUTED
rc = rtems_rfs_group_open (fs,
40054548: d6 06 e0 2c ld [ %i3 + 0x2c ], %o3
<== NOT EXECUTED
rtems_rfs_fs_block (fs, group, 0),
4005454c: 92 5e 80 0a smul %i2, %o2, %o1
<== NOT EXECUTED
rc = rtems_rfs_group_open (fs,
40054550: 98 02 00 19 add %o0, %i1, %o4
<== NOT EXECUTED
40054554: 92 02 60 01 inc %o1
<== NOT EXECUTED
40054558: 40 00 04 b5 call 4005582c <rtems_rfs_group_open>
<== NOT EXECUTED
4005455c: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
if (rc > 0)
40054560: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40054564: 24 bf ff f3 ble,a 40054530 <rtems_rfs_fs_open+0x548>
<== NOT EXECUTED
40054568: c2 06 e0 24 ld [ %i3 + 0x24 ], %g1
<== NOT EXECUTED
for (g = 0; g < group; g++)
4005456c: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40054570: 02 80 00 0d be 400545a4 <rtems_rfs_fs_open+0x5bc>
<== NOT EXECUTED
40054574: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40054578: b0 10 20 00 clr %i0
<== NOT EXECUTED
4005457c: b2 10 20 00 clr %i1
<== NOT EXECUTED
rtems_rfs_group_close (fs, &fs->groups[g]);
40054580: d2 06 e0 20 ld [ %i3 + 0x20 ], %o1
<== NOT EXECUTED
40054584: 92 02 40 18 add %o1, %i0, %o1
<== NOT EXECUTED
40054588: 40 00 05 37 call 40055a64 <rtems_rfs_group_close>
<== NOT EXECUTED
4005458c: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
for (g = 0; g < group; g++)
40054590: b2 06 60 01 inc %i1
<== NOT EXECUTED
40054594: 80 a6 40 1a cmp %i1, %i2
<== NOT EXECUTED
40054598: 12 bf ff fa bne 40054580 <rtems_rfs_fs_open+0x598>
<== NOT EXECUTED
4005459c: b0 06 20 50 add %i0, 0x50, %i0
<== NOT EXECUTED
400545a0: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
400545a4: 7f ff f4 40 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400545a8: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
400545ac: 90 10 20 00 clr %o0
<== NOT EXECUTED
400545b0: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
handle->dirty = false;
400545b4: c0 2f bf d8 clrb [ %fp + -40 ]
<== NOT EXECUTED
handle->bnum = 0;
400545b8: c0 27 bf dc clr [ %fp + -36 ]
<== NOT EXECUTED
400545bc: 40 00 0e 79 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400545c0: c0 27 bf e0 clr [ %fp + -32 ]
<== NOT EXECUTED
400545c4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400545c8: 02 bf ff 6d be 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
400545cc: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: no memory for group table%d: %s\n",
400545d0: 40 00 3f f4 call 400645a0 <strerror>
<== NOT EXECUTED
400545d4: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
400545d8: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400545dc: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400545e0: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
400545e4: 7f ff 9d d9 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400545e8: 90 12 20 10 or %o0, 0x10, %o0 ! 40087410 <MSDOS_DOT_NAME+0x12e8>
<== NOT EXECUTED
400545ec: 30 bf ff 64 b,a 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
rc = rtems_rfs_inode_open (*fs, RTEMS_RFS_ROOT_INO, &inode, true);
400545f0: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
400545f4: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
400545f8: 94 07 bf d8 add %fp, -40, %o2
<== NOT EXECUTED
400545fc: 40 00 06 e9 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40054600: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
if (rc > 0)
40054604: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40054608: 14 80 00 40 bg 40054708 <rtems_rfs_fs_open+0x720>
<== NOT EXECUTED
4005460c: 01 00 00 00 nop
<== NOT EXECUTED
if (((*fs)->flags & RTEMS_RFS_FS_FORCE_OPEN) == 0)
40054610: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
40054614: c2 02 00 00 ld [ %o0 ], %g1
<== NOT EXECUTED
40054618: 80 88 60 04 btst 4, %g1
<== NOT EXECUTED
4005461c: 12 80 00 0f bne 40054658 <rtems_rfs_fs_open+0x670>
<== NOT EXECUTED
40054620: c4 07 bf e4 ld [ %fp + -28 ], %g2
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->mode);
40054624: c2 08 a0 02 ldub [ %g2 + 2 ], %g1
<== NOT EXECUTED
40054628: c4 08 a0 03 ldub [ %g2 + 3 ], %g2
<== NOT EXECUTED
4005462c: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40054630: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if ((mode == 0xffff) || !RTEMS_RFS_S_ISDIR (mode))
40054634: 05 00 00 3f sethi %hi(0xfc00), %g2
<== NOT EXECUTED
40054638: 84 10 a3 ff or %g2, 0x3ff, %g2 ! ffff <_Configuration_Interrupt_stack_size+0xefff>
<== NOT EXECUTED
4005463c: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40054640: 02 80 00 1e be 400546b8 <rtems_rfs_fs_open+0x6d0>
<== NOT EXECUTED
40054644: 82 08 70 00 and %g1, -4096, %g1
<== NOT EXECUTED
40054648: 05 00 00 10 sethi %hi(0x4000), %g2
<== NOT EXECUTED
4005464c: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40054650: 12 80 00 1a bne 400546b8 <rtems_rfs_fs_open+0x6d0>
<== NOT EXECUTED
40054654: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_inode_close (*fs, &inode);
40054658: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
4005465c: 40 00 07 48 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40054660: b0 10 20 00 clr %i0
<== NOT EXECUTED
if (rc > 0)
40054664: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054668: 14 80 00 3a bg 40054750 <rtems_rfs_fs_open+0x768>
<== NOT EXECUTED
4005466c: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
}
return 0;
}
40054670: 81 c7 e0 08 ret
<== NOT EXECUTED
40054674: 81 e8 00 00 restore
<== NOT EXECUTED
free (*fs);
40054678: 7f fe dc 02 call 4000b680 <free>
<== NOT EXECUTED
4005467c: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054680: 90 10 20 00 clr %o0
<== NOT EXECUTED
40054684: 40 00 0e 47 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054688: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
4005468c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054690: 02 bf ff 45 be 400543a4 <rtems_rfs_fs_open+0x3bc>
<== NOT EXECUTED
40054694: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: open: buffer open failed: %d: %s\n",
40054698: 40 00 3f c2 call 400645a0 <strerror>
<== NOT EXECUTED
4005469c: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
400546a0: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400546a4: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400546a8: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
400546ac: 7f ff 9d a7 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400546b0: 90 12 22 18 or %o0, 0x218, %o0 ! 40087218 <MSDOS_DOT_NAME+0x10f0>
<== NOT EXECUTED
400546b4: 30 bf ff 3c b,a 400543a4 <rtems_rfs_fs_open+0x3bc>
<== NOT EXECUTED
rtems_rfs_inode_close (*fs, &inode);
400546b8: 40 00 07 31 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400546bc: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
rtems_rfs_buffer_close (*fs);
400546c0: 7f ff f4 f5 call 40051a94 <rtems_rfs_buffer_close>
<== NOT EXECUTED
400546c4: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
free (*fs);
400546c8: 7f fe db ee call 4000b680 <free>
<== NOT EXECUTED
400546cc: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
400546d0: 90 10 20 00 clr %o0
<== NOT EXECUTED
400546d4: 40 00 0e 33 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400546d8: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
400546dc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400546e0: 02 80 00 04 be 400546f0 <rtems_rfs_fs_open+0x708>
<== NOT EXECUTED
400546e4: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
printf ("rtems-rfs: open: invalid root inode mode\n");
400546e8: 7f ff 9d a7 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
400546ec: 90 12 20 b0 or %o0, 0xb0, %o0 ! 400874b0 <MSDOS_DOT_NAME+0x1388>
<== NOT EXECUTED
errno = EIO;
400546f0: 40 00 20 89 call 4005c914 <__errno>
<== NOT EXECUTED
400546f4: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
400546f8: 82 10 20 05 mov 5, %g1
<== NOT EXECUTED
400546fc: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
40054700: 81 c7 e0 08 ret
<== NOT EXECUTED
40054704: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_buffer_close (*fs);
40054708: 7f ff f4 e3 call 40051a94 <rtems_rfs_buffer_close>
<== NOT EXECUTED
4005470c: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
free (*fs);
40054710: 7f fe db dc call 4000b680 <free>
<== NOT EXECUTED
40054714: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054718: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005471c: 40 00 0e 21 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054720: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40054724: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054728: 02 bf ff 1f be 400543a4 <rtems_rfs_fs_open+0x3bc>
<== NOT EXECUTED
4005472c: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: open: reading root inode: %d: %s\n",
40054730: 40 00 3f 9c call 400645a0 <strerror>
<== NOT EXECUTED
40054734: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40054738: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4005473c: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40054740: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
40054744: 7f ff 9d 81 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054748: 90 12 20 80 or %o0, 0x80, %o0 ! 40087480 <MSDOS_DOT_NAME+0x1358>
<== NOT EXECUTED
4005474c: 30 bf ff 16 b,a 400543a4 <rtems_rfs_fs_open+0x3bc>
<== NOT EXECUTED
rtems_rfs_buffer_close (*fs);
40054750: 7f ff f4 d1 call 40051a94 <rtems_rfs_buffer_close>
<== NOT EXECUTED
40054754: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
free (*fs);
40054758: 7f fe db ca call 4000b680 <free>
<== NOT EXECUTED
4005475c: d0 07 00 00 ld [ %i4 ], %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054760: 90 10 20 00 clr %o0
<== NOT EXECUTED
40054764: 40 00 0e 0f call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40054768: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
4005476c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40054770: 02 bf ff 0d be 400543a4 <rtems_rfs_fs_open+0x3bc>
<== NOT EXECUTED
40054774: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: open: closing root inode: %d: %s\n", rc, strerror (rc));
40054778: 40 00 3f 8a call 400645a0 <strerror>
<== NOT EXECUTED
4005477c: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40054780: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40054784: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40054788: 11 10 02 1d sethi %hi(0x40087400), %o0
<== NOT EXECUTED
4005478c: 7f ff 9d 6f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40054790: 90 12 20 e0 or %o0, 0xe0, %o0 ! 400874e0 <MSDOS_DOT_NAME+0x13b8>
<== NOT EXECUTED
40054794: 30 bf ff 04 b,a 400543a4 <rtems_rfs_fs_open+0x3bc>
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
40054798: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005479c: 40 00 0e 01 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400547a0: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
400547a4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400547a8: 02 80 00 04 be 400547b8 <rtems_rfs_fs_open+0x7d0>
<== NOT EXECUTED
400547ac: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
printf ("rtems-rfs: open: no memory for file system data\n");
400547b0: 7f ff 9d 75 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
400547b4: 90 12 21 e8 or %o0, 0x1e8, %o0 ! 400871e8 <MSDOS_DOT_NAME+0x10c0>
<== NOT EXECUTED
errno = ENOMEM;
400547b8: 40 00 20 57 call 4005c914 <__errno>
<== NOT EXECUTED
400547bc: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
400547c0: 82 10 20 0c mov 0xc, %g1
<== NOT EXECUTED
400547c4: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
return -1;
400547c8: 81 c7 e0 08 ret
<== NOT EXECUTED
400547cc: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400547d0: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
400547d4: 7f ff f3 b4 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400547d8: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
400547dc: 90 10 20 00 clr %o0
<== NOT EXECUTED
400547e0: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
handle->dirty = false;
400547e4: c0 2f bf d8 clrb [ %fp + -40 ]
<== NOT EXECUTED
return ENOMEM;
400547e8: ba 10 20 0c mov 0xc, %i5
<== NOT EXECUTED
handle->bnum = 0;
400547ec: c0 27 bf dc clr [ %fp + -36 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_OPEN))
400547f0: 40 00 0d ec call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400547f4: c0 27 bf e0 clr [ %fp + -32 ]
<== NOT EXECUTED
400547f8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400547fc: 02 bf fe e0 be 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
40054800: 11 10 02 1c sethi %hi(0x40087000), %o0
<== NOT EXECUTED
printf ("rtems-rfs: read-superblock: no memory for group table\n");
40054804: 7f ff 9d 60 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
40054808: 90 12 23 d8 or %o0, 0x3d8, %o0 ! 400873d8 <MSDOS_DOT_NAME+0x12b0>
<== NOT EXECUTED
4005480c: 30 bf fe dc b,a 4005437c <rtems_rfs_fs_open+0x394>
<== NOT EXECUTED
40053fb4 <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;
40053fb4: c4 02 20 04 ld [ %o0 + 4 ], %g2
<== NOT EXECUTED
40053fb8: d0 02 20 08 ld [ %o0 + 8 ], %o0
<== NOT EXECUTED
}
40053fbc: 92 50 80 08 umul %g2, %o0, %o1
<== NOT EXECUTED
40053fc0: 91 40 00 00 rd %y, %o0
<== NOT EXECUTED
40053fc4: 81 c3 e0 08 retl
<== NOT EXECUTED
40053fc8: 01 00 00 00 nop
<== NOT EXECUTED
40055b14 <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)
{
40055b14: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
rtems_rfs_bitmap_bit bit;
int offset;
bool updown;
int direction;
if (inode)
40055b18: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40055b1c: 02 80 00 58 be 40055c7c <rtems_rfs_group_bitmap_alloc+0x168>
<== NOT EXECUTED
40055b20: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
{
size = fs->group_inodes;
40055b24: e2 06 20 2c ld [ %i0 + 0x2c ], %l1
<== NOT EXECUTED
goal -= RTEMS_RFS_ROOT_INO;
40055b28: b2 06 7f ff add %i1, -1, %i1
<== NOT EXECUTED
*/
if (goal >= RTEMS_RFS_ROOT_INO)
goal -= RTEMS_RFS_ROOT_INO;
}
group_start = goal / size;
40055b2c: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40055b30: 01 00 00 00 nop
<== NOT EXECUTED
40055b34: 01 00 00 00 nop
<== NOT EXECUTED
40055b38: 01 00 00 00 nop
<== NOT EXECUTED
40055b3c: a0 76 40 11 udiv %i1, %l1, %l0
<== NOT EXECUTED
*/
while (true)
{
rtems_rfs_bitmap_control* bitmap;
int group;
bool allocated = false;
40055b40: c0 2f bf fb clrb [ %fp + -5 ]
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (goal % size);
40055b44: 82 5c 00 11 smul %l0, %l1, %g1
<== NOT EXECUTED
40055b48: b2 26 40 01 sub %i1, %g1, %i1
<== NOT EXECUTED
40055b4c: f2 27 bf fc st %i1, [ %fp + -4 ]
<== NOT EXECUTED
/*
* We can start at any location and we move out from that point in each
* direction. The offset grows until we find a free bit or we hit an end.
*/
group = group_start + (direction * offset);
40055b50: ba 10 00 10 mov %l0, %i5
<== NOT EXECUTED
direction = 1;
40055b54: a4 10 20 01 mov 1, %l2
<== NOT EXECUTED
updown = true;
40055b58: a6 10 20 01 mov 1, %l3
<== NOT EXECUTED
bool allocated = false;
40055b5c: b2 10 20 00 clr %i1
<== NOT EXECUTED
/*
* If we are still looking up and down and if the group is out of range we
* have reached one end. Stopping looking up and down and just move in the
* one direction one group at a time.
*/
if ((group < 0) || (group >= fs->group_count))
40055b60: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
40055b64: 06 80 00 2e bl 40055c1c <rtems_rfs_group_bitmap_alloc+0x108>
<== NOT EXECUTED
40055b68: a2 04 7f ff add %l1, -1, %l1
<== NOT EXECUTED
group = group_start + (direction * offset);
40055b6c: a8 04 00 19 add %l0, %i1, %l4
<== NOT EXECUTED
if ((group < 0) || (group >= fs->group_count))
40055b70: c2 06 20 24 ld [ %i0 + 0x24 ], %g1
<== NOT EXECUTED
40055b74: 80 a0 40 1d cmp %g1, %i5
<== NOT EXECUTED
40055b78: 04 80 00 2a ble 40055c20 <rtems_rfs_group_bitmap_alloc+0x10c>
<== NOT EXECUTED
40055b7c: 80 8c e0 ff btst 0xff, %l3
<== NOT EXECUTED
* group_start, then alternate the direction and
* increment the offset on every other iteration.
* Otherwise we are marching through the groups, so just
* increment the offset.
*/
if (updown)
40055b80: aa 0c e0 ff and %l3, 0xff, %l5
<== NOT EXECUTED
40055b84: c2 06 20 20 ld [ %i0 + 0x20 ], %g1
<== NOT EXECUTED
40055b88: b9 2f 60 02 sll %i5, 2, %i4
<== NOT EXECUTED
if (inode)
40055b8c: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40055b90: b8 07 00 1d add %i4, %i5, %i4
<== NOT EXECUTED
40055b94: b9 2f 20 04 sll %i4, 4, %i4
<== NOT EXECUTED
40055b98: 82 00 40 1c add %g1, %i4, %g1
<== NOT EXECUTED
40055b9c: 12 80 00 3c bne 40055c8c <rtems_rfs_group_bitmap_alloc+0x178>
<== NOT EXECUTED
40055ba0: ac 00 60 08 add %g1, 8, %l6
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_alloc (bitmap, bit, &allocated, &bit);
40055ba4: d2 07 bf fc ld [ %fp + -4 ], %o1
<== NOT EXECUTED
40055ba8: 96 07 bf fc add %fp, -4, %o3
<== NOT EXECUTED
40055bac: 94 07 bf fb add %fp, -5, %o2
<== NOT EXECUTED
40055bb0: 40 00 18 48 call 4005bcd0 <rtems_rfs_bitmap_map_alloc>
<== NOT EXECUTED
40055bb4: 90 10 00 16 mov %l6, %o0
<== NOT EXECUTED
if (rc > 0)
40055bb8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055bbc: 14 80 00 21 bg 40055c40 <rtems_rfs_group_bitmap_alloc+0x12c>
<== NOT EXECUTED
40055bc0: 01 00 00 00 nop
<== NOT EXECUTED
if (rtems_rfs_fs_release_bitmaps (fs))
40055bc4: c2 06 00 00 ld [ %i0 ], %g1
<== NOT EXECUTED
40055bc8: 80 88 60 01 btst 1, %g1
<== NOT EXECUTED
40055bcc: 22 80 00 46 be,a 40055ce4 <rtems_rfs_group_bitmap_alloc+0x1d0>
<== NOT EXECUTED
40055bd0: d2 05 80 00 ld [ %l6 ], %o1
<== NOT EXECUTED
if (allocated)
40055bd4: c2 0f bf fb ldub [ %fp + -5 ], %g1
<== NOT EXECUTED
40055bd8: 80 88 60 ff btst 0xff, %g1
<== NOT EXECUTED
40055bdc: 12 80 00 5b bne 40055d48 <rtems_rfs_group_bitmap_alloc+0x234>
<== NOT EXECUTED
40055be0: 80 a5 60 00 cmp %l5, 0
<== NOT EXECUTED
if (updown)
40055be4: 22 80 00 2c be,a 40055c94 <rtems_rfs_group_bitmap_alloc+0x180>
<== NOT EXECUTED
40055be8: c0 2f bf fb clrb [ %fp + -5 ]
<== NOT EXECUTED
{
direction = direction > 0 ? -1 : 1;
40055bec: 80 a4 a0 01 cmp %l2, 1
<== NOT EXECUTED
40055bf0: 12 80 00 41 bne 40055cf4 <rtems_rfs_group_bitmap_alloc+0x1e0>
<== NOT EXECUTED
40055bf4: a4 10 3f ff mov -1, %l2
<== NOT EXECUTED
bool allocated = false;
40055bf8: c0 2f bf fb clrb [ %fp + -5 ]
<== NOT EXECUTED
group = group_start + (direction * offset);
40055bfc: ba 38 00 19 xnor %g0, %i1, %i5
<== NOT EXECUTED
40055c00: ba 07 40 10 add %i5, %l0, %i5
<== NOT EXECUTED
if ( direction == -1 )
offset++;
40055c04: b2 06 60 01 inc %i1
<== NOT EXECUTED
bit = direction > 0 ? 0 : size - 1;
40055c08: 82 10 00 11 mov %l1, %g1
<== NOT EXECUTED
40055c0c: c2 27 bf fc st %g1, [ %fp + -4 ]
<== NOT EXECUTED
if ((group < 0) || (group >= fs->group_count))
40055c10: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
40055c14: 36 bf ff d7 bge,a 40055b70 <rtems_rfs_group_bitmap_alloc+0x5c>
<== NOT EXECUTED
40055c18: a8 04 00 19 add %l0, %i1, %l4
<== NOT EXECUTED
if (!updown)
40055c1c: 80 8c e0 ff btst 0xff, %l3
<== NOT EXECUTED
40055c20: 12 80 00 0a bne 40055c48 <rtems_rfs_group_bitmap_alloc+0x134>
<== NOT EXECUTED
40055c24: 90 10 20 00 clr %o0
<== NOT EXECUTED
offset++;
}
}
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))
40055c28: 40 00 08 de call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055c2c: 13 00 00 80 sethi %hi(0x20000), %o1
<== NOT EXECUTED
40055c30: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055c34: 12 80 00 20 bne 40055cb4 <rtems_rfs_group_bitmap_alloc+0x1a0>
<== NOT EXECUTED
40055c38: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-alloc: no blocks available\n");
return ENOSPC;
40055c3c: 90 10 20 1c mov 0x1c, %o0
<== NOT EXECUTED
}
40055c40: 81 c7 e0 08 ret
<== NOT EXECUTED
40055c44: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
direction = direction > 0 ? -1 : 1;
40055c48: 80 a4 a0 01 cmp %l2, 1
<== NOT EXECUTED
40055c4c: 12 80 00 1e bne 40055cc4 <rtems_rfs_group_bitmap_alloc+0x1b0>
<== NOT EXECUTED
40055c50: c0 2f bf fb clrb [ %fp + -5 ]
<== NOT EXECUTED
40055c54: ba 24 00 19 sub %l0, %i1, %i5
<== NOT EXECUTED
40055c58: a4 10 3f ff mov -1, %l2
<== NOT EXECUTED
if (offset)
40055c5c: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40055c60: 12 bf ff ea bne 40055c08 <rtems_rfs_group_bitmap_alloc+0xf4>
<== NOT EXECUTED
40055c64: a6 10 20 00 clr %l3
<== NOT EXECUTED
if ((group < 0) || (group >= fs->group_count))
40055c68: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
40055c6c: 36 bf ff c1 bge,a 40055b70 <rtems_rfs_group_bitmap_alloc+0x5c>
<== NOT EXECUTED
40055c70: a8 04 00 19 add %l0, %i1, %l4
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))
40055c74: 10 bf ff ed b 40055c28 <rtems_rfs_group_bitmap_alloc+0x114>
<== NOT EXECUTED
40055c78: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (goal >= RTEMS_RFS_ROOT_INO)
40055c7c: 04 bf ff ac ble 40055b2c <rtems_rfs_group_bitmap_alloc+0x18>
<== NOT EXECUTED
40055c80: e2 06 20 28 ld [ %i0 + 0x28 ], %l1
<== NOT EXECUTED
goal -= RTEMS_RFS_ROOT_INO;
40055c84: 10 bf ff aa b 40055b2c <rtems_rfs_group_bitmap_alloc+0x18>
<== NOT EXECUTED
40055c88: b2 06 7f ff add %i1, -1, %i1
<== NOT EXECUTED
40055c8c: 10 bf ff c6 b 40055ba4 <rtems_rfs_group_bitmap_alloc+0x90>
<== NOT EXECUTED
40055c90: ac 00 60 2c add %g1, 0x2c, %l6
<== NOT EXECUTED
offset++;
40055c94: b2 06 60 01 inc %i1
<== NOT EXECUTED
bit = direction > 0 ? 0 : size - 1;
40055c98: 80 a4 a0 01 cmp %l2, 1
<== NOT EXECUTED
40055c9c: ba 5c 80 19 smul %l2, %i1, %i5
<== NOT EXECUTED
40055ca0: 12 bf ff da bne 40055c08 <rtems_rfs_group_bitmap_alloc+0xf4>
<== NOT EXECUTED
40055ca4: ba 07 40 10 add %i5, %l0, %i5
<== NOT EXECUTED
40055ca8: 82 10 20 00 clr %g1
<== NOT EXECUTED
40055cac: 10 bf ff d9 b 40055c10 <rtems_rfs_group_bitmap_alloc+0xfc>
<== NOT EXECUTED
40055cb0: c2 27 bf fc st %g1, [ %fp + -4 ]
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-alloc: no blocks available\n");
40055cb4: 7f ff 98 34 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
40055cb8: 90 12 22 d8 or %o0, 0x2d8, %o0
<== NOT EXECUTED
return ENOSPC;
40055cbc: 10 bf ff e1 b 40055c40 <rtems_rfs_group_bitmap_alloc+0x12c>
<== NOT EXECUTED
40055cc0: 90 10 20 1c mov 0x1c, %o0
<== NOT EXECUTED
40055cc4: ba 06 40 10 add %i1, %l0, %i5
<== NOT EXECUTED
if (offset)
40055cc8: a4 10 20 01 mov 1, %l2
<== NOT EXECUTED
40055ccc: a6 10 20 00 clr %l3
<== NOT EXECUTED
40055cd0: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40055cd4: 02 bf ff e5 be 40055c68 <rtems_rfs_group_bitmap_alloc+0x154>
<== NOT EXECUTED
40055cd8: 82 10 20 00 clr %g1
<== NOT EXECUTED
bit = direction > 0 ? 0 : size - 1;
40055cdc: 10 bf ff cd b 40055c10 <rtems_rfs_group_bitmap_alloc+0xfc>
<== NOT EXECUTED
40055ce0: c2 27 bf fc st %g1, [ %fp + -4 ]
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055ce4: 7f ff ee 70 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055ce8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (allocated)
40055cec: 10 bf ff bb b 40055bd8 <rtems_rfs_group_bitmap_alloc+0xc4>
<== NOT EXECUTED
40055cf0: c2 0f bf fb ldub [ %fp + -5 ], %g1
<== NOT EXECUTED
bool allocated = false;
40055cf4: c0 2f bf fb clrb [ %fp + -5 ]
<== NOT EXECUTED
if (offset)
40055cf8: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40055cfc: 02 80 00 05 be 40055d10 <rtems_rfs_group_bitmap_alloc+0x1fc>
<== NOT EXECUTED
40055d00: ba 10 00 14 mov %l4, %i5
<== NOT EXECUTED
direction = direction > 0 ? -1 : 1;
40055d04: a4 10 20 01 mov 1, %l2
<== NOT EXECUTED
bit = direction > 0 ? 0 : size - 1;
40055d08: 10 bf ff e9 b 40055cac <rtems_rfs_group_bitmap_alloc+0x198>
<== NOT EXECUTED
40055d0c: 82 10 20 00 clr %g1
<== NOT EXECUTED
if ((group < 0) || (group >= fs->group_count))
40055d10: 80 a5 20 00 cmp %l4, 0
<== NOT EXECUTED
40055d14: 26 80 00 07 bl,a 40055d30 <rtems_rfs_group_bitmap_alloc+0x21c>
<== NOT EXECUTED
40055d18: c0 2f bf fb clrb [ %fp + -5 ]
<== NOT EXECUTED
40055d1c: c4 06 20 24 ld [ %i0 + 0x24 ], %g2
<== NOT EXECUTED
40055d20: 80 a0 80 14 cmp %g2, %l4
<== NOT EXECUTED
40055d24: 14 bf ff 98 bg 40055b84 <rtems_rfs_group_bitmap_alloc+0x70>
<== NOT EXECUTED
40055d28: a4 10 20 01 mov 1, %l2
<== NOT EXECUTED
bool allocated = false;
40055d2c: c0 2f bf fb clrb [ %fp + -5 ]
<== NOT EXECUTED
40055d30: a4 10 3f ff mov -1, %l2
<== NOT EXECUTED
if ((group < 0) || (group >= fs->group_count))
40055d34: 80 a5 20 00 cmp %l4, 0
<== NOT EXECUTED
40055d38: 16 bf ff 8e bge 40055b70 <rtems_rfs_group_bitmap_alloc+0x5c>
<== NOT EXECUTED
40055d3c: a6 10 00 01 mov %g1, %l3
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))
40055d40: 10 bf ff ba b 40055c28 <rtems_rfs_group_bitmap_alloc+0x114>
<== NOT EXECUTED
40055d44: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (inode)
40055d48: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40055d4c: 02 80 00 14 be 40055d9c <rtems_rfs_group_bitmap_alloc+0x288>
<== NOT EXECUTED
40055d50: c4 07 bf fc ld [ %fp + -4 ], %g2
<== NOT EXECUTED
*result = rtems_rfs_group_inode (fs, group, bit);
40055d54: c2 06 20 2c ld [ %i0 + 0x2c ], %g1
<== NOT EXECUTED
40055d58: 84 00 a0 01 inc %g2
<== NOT EXECUTED
40055d5c: 82 5f 40 01 smul %i5, %g1, %g1
<== NOT EXECUTED
40055d60: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
40055d64: c2 26 c0 00 st %g1, [ %i3 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))
40055d68: 90 10 20 00 clr %o0
<== NOT EXECUTED
40055d6c: 40 00 08 8d call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055d70: 13 00 00 80 sethi %hi(0x20000), %o1
<== NOT EXECUTED
40055d74: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055d78: 02 80 00 07 be 40055d94 <rtems_rfs_group_bitmap_alloc+0x280>
<== NOT EXECUTED
40055d7c: 13 10 02 09 sethi %hi(0x40082400), %o1
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-alloc: %s allocated: %" PRId32 "\n",
40055d80: 92 12 63 d0 or %o1, 0x3d0, %o1 ! 400827d0 <rtems_rfs_rtems_eval_config+0x8c4>
<== NOT EXECUTED
40055d84: d4 06 c0 00 ld [ %i3 ], %o2
<== NOT EXECUTED
40055d88: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055d8c: 7f ff 97 ef call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055d90: 90 12 22 a0 or %o0, 0x2a0, %o0 ! 40087ea0 <MSDOS_DOT_NAME+0x1d78>
<== NOT EXECUTED
return 0;
40055d94: 10 bf ff ab b 40055c40 <rtems_rfs_group_bitmap_alloc+0x12c>
<== NOT EXECUTED
40055d98: 90 10 20 00 clr %o0
<== NOT EXECUTED
*result = rtems_rfs_group_block (&fs->groups[group], bit);
40055d9c: c2 06 20 20 ld [ %i0 + 0x20 ], %g1
<== NOT EXECUTED
40055da0: c2 00 40 1c ld [ %g1 + %i4 ], %g1
<== NOT EXECUTED
40055da4: 84 00 40 02 add %g1, %g2, %g2
<== NOT EXECUTED
40055da8: c4 26 c0 00 st %g2, [ %i3 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))
40055dac: 90 10 20 00 clr %o0
<== NOT EXECUTED
40055db0: 40 00 08 7c call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055db4: 13 00 00 80 sethi %hi(0x20000), %o1
<== NOT EXECUTED
40055db8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055dbc: 02 bf ff f6 be 40055d94 <rtems_rfs_group_bitmap_alloc+0x280>
<== NOT EXECUTED
40055dc0: 13 10 02 09 sethi %hi(0x40082400), %o1
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-alloc: %s allocated: %" PRId32 "\n",
40055dc4: 10 bf ff f0 b 40055d84 <rtems_rfs_group_bitmap_alloc+0x270>
<== NOT EXECUTED
40055dc8: 92 12 62 c0 or %o1, 0x2c0, %o1 ! 400826c0 <rtems_rfs_rtems_eval_config+0x7b4>
<== NOT EXECUTED
40055dcc <rtems_rfs_group_bitmap_free>:
int
rtems_rfs_group_bitmap_free (rtems_rfs_file_system* fs,
bool inode,
rtems_rfs_bitmap_bit no)
{
40055dcc: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
unsigned int group;
rtems_rfs_bitmap_bit bit;
size_t size;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))
40055dd0: 90 10 20 00 clr %o0
<== NOT EXECUTED
40055dd4: 13 00 00 80 sethi %hi(0x20000), %o1
<== NOT EXECUTED
40055dd8: 40 00 08 72 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055ddc: b8 10 00 18 mov %i0, %i4
<== NOT EXECUTED
40055de0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055de4: 22 80 00 0c be,a 40055e14 <rtems_rfs_group_bitmap_free+0x48>
<== NOT EXECUTED
40055de8: fa 07 20 20 ld [ %i4 + 0x20 ], %i5
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-free: %s free: %" PRId32 "\n",
40055dec: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40055df0: 12 80 00 36 bne 40055ec8 <rtems_rfs_group_bitmap_free+0xfc>
<== NOT EXECUTED
40055df4: 13 10 02 09 sethi %hi(0x40082400), %o1
<== NOT EXECUTED
40055df8: 13 10 02 09 sethi %hi(0x40082400), %o1
<== NOT EXECUTED
40055dfc: 92 12 62 c0 or %o1, 0x2c0, %o1 ! 400826c0 <rtems_rfs_rtems_eval_config+0x7b4>
<== NOT EXECUTED
40055e00: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055e04: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40055e08: 7f ff 97 d0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055e0c: 90 12 23 10 or %o0, 0x310, %o0
<== NOT EXECUTED
40055e10: fa 07 20 20 ld [ %i4 + 0x20 ], %i5
<== NOT EXECUTED
inode ? "inode" : "block", no);
if (inode)
40055e14: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40055e18: 02 80 00 17 be 40055e74 <rtems_rfs_group_bitmap_free+0xa8>
<== NOT EXECUTED
40055e1c: b4 06 bf ff add %i2, -1, %i2
<== NOT EXECUTED
{
no -= RTEMS_RFS_ROOT_INO;
size = fs->group_inodes;
40055e20: d2 07 20 2c ld [ %i4 + 0x2c ], %o1
<== NOT EXECUTED
no -= RTEMS_RFS_SUPERBLOCK_SIZE;
size = fs->group_blocks;
}
group = no / size;
bit = (rtems_rfs_bitmap_bit) (no % size);
40055e24: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40055e28: 01 00 00 00 nop
<== NOT EXECUTED
40055e2c: 01 00 00 00 nop
<== NOT EXECUTED
40055e30: 01 00 00 00 nop
<== NOT EXECUTED
40055e34: 84 76 80 09 udiv %i2, %o1, %g2
<== NOT EXECUTED
if (inode)
bitmap = &fs->groups[group].inode_bitmap;
40055e38: 83 28 a0 02 sll %g2, 2, %g1
<== NOT EXECUTED
40055e3c: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
40055e40: 83 28 60 04 sll %g1, 4, %g1
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055e44: 92 58 80 09 smul %g2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].inode_bitmap;
40055e48: ba 07 40 01 add %i5, %g1, %i5
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055e4c: 92 26 80 09 sub %i2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].inode_bitmap;
40055e50: ba 07 60 2c add %i5, 0x2c, %i5
<== NOT EXECUTED
else
bitmap = &fs->groups[group].block_bitmap;
rc = rtems_rfs_bitmap_map_clear (bitmap, bit);
40055e54: 40 00 17 2f call 4005bb10 <rtems_rfs_bitmap_map_clear>
<== NOT EXECUTED
40055e58: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055e5c: d2 07 40 00 ld [ %i5 ], %o1
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_clear (bitmap, bit);
40055e60: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055e64: 7f ff ee 10 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055e68: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
return rc;
}
40055e6c: 81 c7 e0 08 ret
<== NOT EXECUTED
40055e70: 81 e8 00 00 restore
<== NOT EXECUTED
size = fs->group_blocks;
40055e74: d2 07 20 28 ld [ %i4 + 0x28 ], %o1
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055e78: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40055e7c: 01 00 00 00 nop
<== NOT EXECUTED
40055e80: 01 00 00 00 nop
<== NOT EXECUTED
40055e84: 01 00 00 00 nop
<== NOT EXECUTED
40055e88: 84 76 80 09 udiv %i2, %o1, %g2
<== NOT EXECUTED
bitmap = &fs->groups[group].block_bitmap;
40055e8c: 83 28 a0 02 sll %g2, 2, %g1
<== NOT EXECUTED
40055e90: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
40055e94: 83 28 60 04 sll %g1, 4, %g1
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055e98: 92 58 80 09 smul %g2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].block_bitmap;
40055e9c: ba 07 40 01 add %i5, %g1, %i5
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055ea0: 92 26 80 09 sub %i2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].block_bitmap;
40055ea4: ba 07 60 08 add %i5, 8, %i5
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_clear (bitmap, bit);
40055ea8: 40 00 17 1a call 4005bb10 <rtems_rfs_bitmap_map_clear>
<== NOT EXECUTED
40055eac: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055eb0: d2 07 40 00 ld [ %i5 ], %o1
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_clear (bitmap, bit);
40055eb4: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055eb8: 7f ff ed fb call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055ebc: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
}
40055ec0: 81 c7 e0 08 ret
<== NOT EXECUTED
40055ec4: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-free: %s free: %" PRId32 "\n",
40055ec8: 10 bf ff ce b 40055e00 <rtems_rfs_group_bitmap_free+0x34>
<== NOT EXECUTED
40055ecc: 92 12 63 d0 or %o1, 0x3d0, %o1
<== NOT EXECUTED
40055ed0 <rtems_rfs_group_bitmap_test>:
int
rtems_rfs_group_bitmap_test (rtems_rfs_file_system* fs,
bool inode,
rtems_rfs_bitmap_bit no,
bool* state)
{
40055ed0: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
unsigned int group;
rtems_rfs_bitmap_bit bit;
size_t size;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_BITMAPS))
40055ed4: 90 10 20 00 clr %o0
<== NOT EXECUTED
40055ed8: 13 00 00 80 sethi %hi(0x20000), %o1
<== NOT EXECUTED
40055edc: 40 00 08 31 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055ee0: b8 10 00 18 mov %i0, %i4
<== NOT EXECUTED
40055ee4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055ee8: 02 80 00 0b be 40055f14 <rtems_rfs_group_bitmap_test+0x44>
<== NOT EXECUTED
40055eec: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-test: %s test: %" PRId32 "\n",
40055ef0: 12 80 00 45 bne 40056004 <rtems_rfs_group_bitmap_test+0x134>
<== NOT EXECUTED
40055ef4: 13 10 02 09 sethi %hi(0x40082400), %o1
<== NOT EXECUTED
40055ef8: 13 10 02 09 sethi %hi(0x40082400), %o1
<== NOT EXECUTED
40055efc: 92 12 62 c0 or %o1, 0x2c0, %o1 ! 400826c0 <rtems_rfs_rtems_eval_config+0x7b4>
<== NOT EXECUTED
40055f00: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055f04: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40055f08: 7f ff 97 90 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055f0c: 90 12 23 40 or %o0, 0x340, %o0
<== NOT EXECUTED
inode ? "inode" : "block", no);
if (inode)
40055f10: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40055f14: 02 80 00 1f be 40055f90 <rtems_rfs_group_bitmap_test+0xc0>
<== NOT EXECUTED
40055f18: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
{
if ((no < RTEMS_RFS_ROOT_INO) || (no > rtems_rfs_fs_inodes (fs)))
40055f1c: 04 80 00 1b ble 40055f88 <rtems_rfs_group_bitmap_test+0xb8>
<== NOT EXECUTED
40055f20: b0 10 20 16 mov 0x16, %i0
<== NOT EXECUTED
40055f24: c2 07 20 14 ld [ %i4 + 0x14 ], %g1
<== NOT EXECUTED
40055f28: 80 a0 40 1a cmp %g1, %i2
<== NOT EXECUTED
40055f2c: 0a 80 00 17 bcs 40055f88 <rtems_rfs_group_bitmap_test+0xb8>
<== NOT EXECUTED
40055f30: b4 06 bf ff add %i2, -1, %i2
<== NOT EXECUTED
return EINVAL;
no -= RTEMS_RFS_ROOT_INO;
size = fs->group_inodes;
40055f34: d2 07 20 2c ld [ %i4 + 0x2c ], %o1
<== NOT EXECUTED
group = no / size;
bit = (rtems_rfs_bitmap_bit) (no % size);
if (inode)
bitmap = &fs->groups[group].inode_bitmap;
40055f38: fa 07 20 20 ld [ %i4 + 0x20 ], %i5
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055f3c: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40055f40: 01 00 00 00 nop
<== NOT EXECUTED
40055f44: 01 00 00 00 nop
<== NOT EXECUTED
40055f48: 01 00 00 00 nop
<== NOT EXECUTED
40055f4c: 84 76 80 09 udiv %i2, %o1, %g2
<== NOT EXECUTED
bitmap = &fs->groups[group].inode_bitmap;
40055f50: 83 28 a0 02 sll %g2, 2, %g1
<== NOT EXECUTED
40055f54: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
40055f58: 83 28 60 04 sll %g1, 4, %g1
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055f5c: 92 58 80 09 smul %g2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].inode_bitmap;
40055f60: ba 07 40 01 add %i5, %g1, %i5
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055f64: 92 26 80 09 sub %i2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].inode_bitmap;
40055f68: ba 07 60 2c add %i5, 0x2c, %i5
<== NOT EXECUTED
else
bitmap = &fs->groups[group].block_bitmap;
rc = rtems_rfs_bitmap_map_test (bitmap, bit, state);
40055f6c: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
40055f70: 40 00 17 0d call 4005bba4 <rtems_rfs_bitmap_map_test>
<== NOT EXECUTED
40055f74: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055f78: d2 07 40 00 ld [ %i5 ], %o1
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_test (bitmap, bit, state);
40055f7c: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055f80: 7f ff ed c9 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055f84: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
return rc;
40055f88: 81 c7 e0 08 ret
<== NOT EXECUTED
40055f8c: 81 e8 00 00 restore
<== NOT EXECUTED
if ((no < RTEMS_RFS_ROOT_INO) || (no >= rtems_rfs_fs_blocks (fs)))
40055f90: 04 bf ff fe ble 40055f88 <rtems_rfs_group_bitmap_test+0xb8>
<== NOT EXECUTED
40055f94: b0 10 20 16 mov 0x16, %i0
<== NOT EXECUTED
40055f98: c2 07 20 04 ld [ %i4 + 4 ], %g1
<== NOT EXECUTED
40055f9c: 80 a0 40 1a cmp %g1, %i2
<== NOT EXECUTED
40055fa0: 08 bf ff fa bleu 40055f88 <rtems_rfs_group_bitmap_test+0xb8>
<== NOT EXECUTED
40055fa4: b4 06 bf ff add %i2, -1, %i2
<== NOT EXECUTED
size = fs->group_blocks;
40055fa8: d2 07 20 28 ld [ %i4 + 0x28 ], %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].block_bitmap;
40055fac: fa 07 20 20 ld [ %i4 + 0x20 ], %i5
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055fb0: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40055fb4: 01 00 00 00 nop
<== NOT EXECUTED
40055fb8: 01 00 00 00 nop
<== NOT EXECUTED
40055fbc: 01 00 00 00 nop
<== NOT EXECUTED
40055fc0: 84 76 80 09 udiv %i2, %o1, %g2
<== NOT EXECUTED
bitmap = &fs->groups[group].block_bitmap;
40055fc4: 83 28 a0 02 sll %g2, 2, %g1
<== NOT EXECUTED
40055fc8: 82 00 40 02 add %g1, %g2, %g1
<== NOT EXECUTED
40055fcc: 83 28 60 04 sll %g1, 4, %g1
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055fd0: 92 58 80 09 smul %g2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].block_bitmap;
40055fd4: ba 07 40 01 add %i5, %g1, %i5
<== NOT EXECUTED
bit = (rtems_rfs_bitmap_bit) (no % size);
40055fd8: 92 26 80 09 sub %i2, %o1, %o1
<== NOT EXECUTED
bitmap = &fs->groups[group].block_bitmap;
40055fdc: ba 07 60 08 add %i5, 8, %i5
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_test (bitmap, bit, state);
40055fe0: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
40055fe4: 40 00 16 f0 call 4005bba4 <rtems_rfs_bitmap_map_test>
<== NOT EXECUTED
40055fe8: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055fec: d2 07 40 00 ld [ %i5 ], %o1
<== NOT EXECUTED
rc = rtems_rfs_bitmap_map_test (bitmap, bit, state);
40055ff0: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, bitmap);
40055ff4: 7f ff ed ac call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055ff8: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
return rc;
40055ffc: 81 c7 e0 08 ret
<== NOT EXECUTED
40056000: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: group-bitmap-test: %s test: %" PRId32 "\n",
40056004: 10 bf ff bf b 40055f00 <rtems_rfs_group_bitmap_test+0x30>
<== NOT EXECUTED
40056008: 92 12 63 d0 or %o1, 0x3d0, %o1
<== NOT EXECUTED
}
4005600c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056010: 81 e8 00 00 restore
<== NOT EXECUTED
40055a64 <rtems_rfs_group_close>:
int
rtems_rfs_group_close (rtems_rfs_file_system* fs, rtems_rfs_group* group)
{
40055a64: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
int result = 0;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_CLOSE))
40055a68: 90 10 20 00 clr %o0
<== NOT EXECUTED
40055a6c: 40 00 09 4d call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055a70: 13 00 00 40 sethi %hi(0x10000), %o1
<== NOT EXECUTED
40055a74: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055a78: 32 80 00 18 bne,a 40055ad8 <rtems_rfs_group_close+0x74>
<== NOT EXECUTED
40055a7c: d2 06 40 00 ld [ %i1 ], %o1
<== NOT EXECUTED
/*
* We need to close as much as possible and also return any error if one
* occurs but this may result in one even more important error being lost but
* we cannot OR the errors together so this is a reasonable compromise.
*/
rc = rtems_rfs_bitmap_close (&group->inode_bitmap);
40055a80: 40 00 19 27 call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
40055a84: 90 06 60 2c add %i1, 0x2c, %o0
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40055a88: 92 06 60 44 add %i1, 0x44, %o1
<== NOT EXECUTED
40055a8c: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
40055a90: 7f ff ef 05 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055a94: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->dirty = false;
40055a98: c0 2e 60 44 clrb [ %i1 + 0x44 ]
<== NOT EXECUTED
if (rc > 0)
result = rc;
rc = rtems_rfs_buffer_handle_close (fs, &group->inode_bitmap_buffer);
if (rc > 0)
result = rc;
rc = rtems_rfs_bitmap_close (&group->block_bitmap);
40055a9c: 90 06 60 08 add %i1, 8, %o0
<== NOT EXECUTED
handle->bnum = 0;
40055aa0: c0 26 60 48 clr [ %i1 + 0x48 ]
<== NOT EXECUTED
40055aa4: 40 00 19 1e call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
40055aa8: c0 26 60 4c clr [ %i1 + 0x4c ]
<== NOT EXECUTED
if (rc > 0)
40055aac: 82 92 20 00 orcc %o0, 0, %g1
<== NOT EXECUTED
40055ab0: 04 80 00 0e ble 40055ae8 <rtems_rfs_group_close+0x84>
<== NOT EXECUTED
40055ab4: 92 06 60 20 add %i1, 0x20, %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40055ab8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40055abc: 7f ff ee fa call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055ac0: b0 10 00 01 mov %g1, %i0
<== NOT EXECUTED
handle->dirty = false;
40055ac4: c0 2e 60 20 clrb [ %i1 + 0x20 ]
<== NOT EXECUTED
handle->bnum = 0;
40055ac8: c0 26 60 24 clr [ %i1 + 0x24 ]
<== NOT EXECUTED
handle->buffer = NULL;
40055acc: c0 26 60 28 clr [ %i1 + 0x28 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_close (fs, &group->block_bitmap_buffer);
if (rc > 0)
result = rc;
return result;
}
40055ad0: 81 c7 e0 08 ret
<== NOT EXECUTED
40055ad4: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: group-close: base=%" PRId32 "\n", group->base);
40055ad8: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055adc: 7f ff 98 9b call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055ae0: 90 12 22 78 or %o0, 0x278, %o0 ! 40087e78 <MSDOS_DOT_NAME+0x1d50>
<== NOT EXECUTED
40055ae4: 30 bf ff e7 b,a 40055a80 <rtems_rfs_group_close+0x1c>
<== NOT EXECUTED
40055ae8: 82 38 00 1d xnor %g0, %i5, %g1
<== NOT EXECUTED
40055aec: 83 38 60 1f sra %g1, 0x1f, %g1
<== NOT EXECUTED
40055af0: 82 0f 40 01 and %i5, %g1, %g1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40055af4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40055af8: 7f ff ee eb call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055afc: b0 10 00 01 mov %g1, %i0
<== NOT EXECUTED
handle->dirty = false;
40055b00: c0 2e 60 20 clrb [ %i1 + 0x20 ]
<== NOT EXECUTED
handle->bnum = 0;
40055b04: c0 26 60 24 clr [ %i1 + 0x24 ]
<== NOT EXECUTED
handle->buffer = NULL;
40055b08: c0 26 60 28 clr [ %i1 + 0x28 ]
<== NOT EXECUTED
}
40055b0c: 81 c7 e0 08 ret
<== NOT EXECUTED
40055b10: 81 e8 00 00 restore
<== NOT EXECUTED
4005582c <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)
{
4005582c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
int rc;
if (base >= rtems_rfs_fs_blocks (fs))
40055830: c2 06 20 04 ld [ %i0 + 4 ], %g1
<== NOT EXECUTED
40055834: 80 a0 40 19 cmp %g1, %i1
<== NOT EXECUTED
40055838: 08 80 00 56 bleu 40055990 <rtems_rfs_group_open+0x164>
<== NOT EXECUTED
4005583c: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
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))
40055840: 84 06 40 1a add %i1, %i2, %g2
<== NOT EXECUTED
40055844: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40055848: 28 80 00 02 bleu,a 40055850 <rtems_rfs_group_open+0x24>
<== NOT EXECUTED
4005584c: b4 20 40 19 sub %g1, %i1, %i2
<== NOT EXECUTED
40055850: 80 a6 80 1b cmp %i2, %i3
<== NOT EXECUTED
40055854: 18 80 00 25 bgu 400558e8 <rtems_rfs_group_open+0xbc>
<== NOT EXECUTED
40055858: a0 10 00 1a mov %i2, %l0
<== NOT EXECUTED
* the format configuration needs reviewing.
*/
if (inodes > size)
inodes = size;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))
4005585c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40055860: 40 00 09 d0 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055864: 13 00 00 20 sethi %hi(0x8000), %o1
<== NOT EXECUTED
40055868: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005586c: 12 80 00 42 bne 40055974 <rtems_rfs_group_open+0x148>
<== NOT EXECUTED
40055870: 96 10 00 10 mov %l0, %o3
<== NOT EXECUTED
printf ("rtems-rfs: group-open: base=%" PRId32 ", blocks=%zd inodes=%zd\n",
base, size, inodes);
group->base = base;
40055874: f2 27 00 00 st %i1, [ %i4 ]
<== NOT EXECUTED
group->size = size;
rc = rtems_rfs_buffer_handle_open (fs, &group->block_bitmap_buffer);
40055878: b6 07 20 20 add %i4, 0x20, %i3
<== NOT EXECUTED
group->size = size;
4005587c: f4 27 20 04 st %i2, [ %i4 + 4 ]
<== NOT EXECUTED
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,
40055880: a2 07 20 08 add %i4, 8, %l1
<== NOT EXECUTED
handle->dirty = false;
40055884: c0 2f 20 20 clrb [ %i4 + 0x20 ]
<== NOT EXECUTED
40055888: 98 10 00 19 mov %i1, %o4
<== NOT EXECUTED
handle->bnum = 0;
4005588c: c0 27 20 24 clr [ %i4 + 0x24 ]
<== NOT EXECUTED
40055890: 96 10 00 1a mov %i2, %o3
<== NOT EXECUTED
handle->buffer = NULL;
40055894: c0 27 20 28 clr [ %i4 + 0x28 ]
<== NOT EXECUTED
40055898: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
4005589c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400558a0: 40 00 19 8e call 4005bed8 <rtems_rfs_bitmap_open>
<== NOT EXECUTED
400558a4: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
&group->block_bitmap_buffer, size,
group->base + RTEMS_RFS_GROUP_BLOCK_BITMAP_BLOCK);
if (rc > 0)
400558a8: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400558ac: 04 80 00 18 ble 4005590c <rtems_rfs_group_open+0xe0>
<== NOT EXECUTED
400558b0: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400558b4: 7f ff ef 7c call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400558b8: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
handle->dirty = false;
400558bc: c0 2f 20 20 clrb [ %i4 + 0x20 ]
<== NOT EXECUTED
{
rtems_rfs_buffer_handle_close (fs, &group->block_bitmap_buffer);
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))
400558c0: 90 10 20 00 clr %o0
<== NOT EXECUTED
handle->bnum = 0;
400558c4: c0 27 20 24 clr [ %i4 + 0x24 ]
<== NOT EXECUTED
400558c8: 13 00 00 20 sethi %hi(0x8000), %o1
<== NOT EXECUTED
400558cc: 40 00 09 b5 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400558d0: c0 27 20 28 clr [ %i4 + 0x28 ]
<== NOT EXECUTED
400558d4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400558d8: 12 80 00 3e bne 400559d0 <rtems_rfs_group_open+0x1a4>
<== NOT EXECUTED
400558dc: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, &group->block_bitmap);
rtems_rfs_bitmap_release_buffer (fs, &group->inode_bitmap);
}
return 0;
}
400558e0: 81 c7 e0 08 ret
<== NOT EXECUTED
400558e4: 81 e8 00 00 restore
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))
400558e8: 90 10 20 00 clr %o0
<== NOT EXECUTED
400558ec: 13 00 00 20 sethi %hi(0x8000), %o1
<== NOT EXECUTED
400558f0: 40 00 09 ac call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400558f4: a0 10 00 1b mov %i3, %l0
<== NOT EXECUTED
400558f8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400558fc: 22 bf ff df be,a 40055878 <rtems_rfs_group_open+0x4c>
<== NOT EXECUTED
40055900: f2 27 00 00 st %i1, [ %i4 ]
<== NOT EXECUTED
printf ("rtems-rfs: group-open: base=%" PRId32 ", blocks=%zd inodes=%zd\n",
40055904: 10 80 00 1c b 40055974 <rtems_rfs_group_open+0x148>
<== NOT EXECUTED
40055908: 96 10 00 10 mov %l0, %o3
<== NOT EXECUTED
handle->dirty = false;
4005590c: c0 2f 20 44 clrb [ %i4 + 0x44 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_open (fs, &group->inode_bitmap_buffer);
40055910: b4 07 20 44 add %i4, 0x44, %i2
<== NOT EXECUTED
handle->bnum = 0;
40055914: c0 27 20 48 clr [ %i4 + 0x48 ]
<== NOT EXECUTED
rc = rtems_rfs_bitmap_open (&group->inode_bitmap, fs,
40055918: 96 10 00 10 mov %l0, %o3
<== NOT EXECUTED
handle->buffer = NULL;
4005591c: c0 27 20 4c clr [ %i4 + 0x4c ]
<== NOT EXECUTED
40055920: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40055924: d8 07 00 00 ld [ %i4 ], %o4
<== NOT EXECUTED
40055928: 98 03 20 01 inc %o4
<== NOT EXECUTED
4005592c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40055930: 40 00 19 6a call 4005bed8 <rtems_rfs_bitmap_open>
<== NOT EXECUTED
40055934: 90 07 20 2c add %i4, 0x2c, %o0
<== NOT EXECUTED
if (rc > 0)
40055938: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
4005593c: 14 80 00 2e bg 400559f4 <rtems_rfs_group_open+0x1c8>
<== NOT EXECUTED
40055940: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
if (rtems_rfs_fs_release_bitmaps (fs))
40055944: c2 07 40 00 ld [ %i5 ], %g1
<== NOT EXECUTED
40055948: 80 88 60 01 btst 1, %g1
<== NOT EXECUTED
4005594c: 12 bf ff e5 bne 400558e0 <rtems_rfs_group_open+0xb4>
<== NOT EXECUTED
40055950: b0 10 20 00 clr %i0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, &group->block_bitmap);
40055954: d2 07 20 08 ld [ %i4 + 8 ], %o1
<== NOT EXECUTED
40055958: 7f ff ef 53 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
4005595c: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
rtems_rfs_bitmap_release_buffer (fs, &group->inode_bitmap);
40055960: d2 07 20 2c ld [ %i4 + 0x2c ], %o1
<== NOT EXECUTED
40055964: 7f ff ef 50 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055968: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
}
4005596c: 81 c7 e0 08 ret
<== NOT EXECUTED
40055970: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: group-open: base=%" PRId32 ", blocks=%zd inodes=%zd\n",
40055974: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40055978: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
4005597c: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055980: 7f ff 98 f2 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055984: 90 12 21 c0 or %o0, 0x1c0, %o0 ! 40087dc0 <MSDOS_DOT_NAME+0x1c98>
<== NOT EXECUTED
group->base = base;
40055988: 10 bf ff bc b 40055878 <rtems_rfs_group_open+0x4c>
<== NOT EXECUTED
4005598c: f2 27 00 00 st %i1, [ %i4 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))
40055990: 90 10 20 00 clr %o0
<== NOT EXECUTED
40055994: 13 00 00 20 sethi %hi(0x8000), %o1
<== NOT EXECUTED
40055998: 40 00 09 82 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005599c: b0 10 20 05 mov 5, %i0
<== NOT EXECUTED
400559a0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400559a4: 02 80 00 2e be 40055a5c <rtems_rfs_group_open+0x230>
<== NOT EXECUTED
400559a8: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: group-open: base outside file system range: %d: %s\n",
400559ac: 40 00 3a fd call 400645a0 <strerror>
<== NOT EXECUTED
400559b0: 90 10 20 05 mov 5, %o0 ! 5 <_TLS_Alignment+0x4>
<== NOT EXECUTED
400559b4: 92 10 20 05 mov 5, %o1
<== NOT EXECUTED
400559b8: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400559bc: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
400559c0: 7f ff 98 e2 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400559c4: 90 12 21 80 or %o0, 0x180, %o0 ! 40087d80 <MSDOS_DOT_NAME+0x1c58>
<== NOT EXECUTED
400559c8: 81 c7 e0 08 ret
<== NOT EXECUTED
400559cc: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: group-open: could not open block bitmap: %d: %s\n",
400559d0: 40 00 3a f4 call 400645a0 <strerror>
<== NOT EXECUTED
400559d4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400559d8: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
400559dc: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400559e0: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
400559e4: 7f ff 98 d9 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400559e8: 90 12 21 f8 or %o0, 0x1f8, %o0 ! 40087df8 <MSDOS_DOT_NAME+0x1cd0>
<== NOT EXECUTED
400559ec: 81 c7 e0 08 ret
<== NOT EXECUTED
400559f0: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
400559f4: 7f ff ef 2c call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400559f8: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
handle->dirty = false;
400559fc: c0 2f 20 44 clrb [ %i4 + 0x44 ]
<== NOT EXECUTED
rtems_rfs_bitmap_close (&group->block_bitmap);
40055a00: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
handle->bnum = 0;
40055a04: c0 27 20 48 clr [ %i4 + 0x48 ]
<== NOT EXECUTED
40055a08: 40 00 19 45 call 4005bf1c <rtems_rfs_bitmap_close>
<== NOT EXECUTED
40055a0c: c0 27 20 4c clr [ %i4 + 0x4c ]
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40055a10: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
40055a14: 7f ff ef 24 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40055a18: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
handle->dirty = false;
40055a1c: c0 2f 20 20 clrb [ %i4 + 0x20 ]
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_GROUP_OPEN))
40055a20: 90 10 20 00 clr %o0
<== NOT EXECUTED
handle->bnum = 0;
40055a24: c0 27 20 24 clr [ %i4 + 0x24 ]
<== NOT EXECUTED
40055a28: 13 00 00 20 sethi %hi(0x8000), %o1
<== NOT EXECUTED
40055a2c: 40 00 09 5d call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40055a30: c0 27 20 28 clr [ %i4 + 0x28 ]
<== NOT EXECUTED
40055a34: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40055a38: 02 80 00 09 be 40055a5c <rtems_rfs_group_open+0x230>
<== NOT EXECUTED
40055a3c: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: group-open: could not open inode bitmap: %d: %s\n",
40055a40: 40 00 3a d8 call 400645a0 <strerror>
<== NOT EXECUTED
40055a44: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40055a48: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
40055a4c: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40055a50: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40055a54: 7f ff 98 bd call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40055a58: 90 12 22 38 or %o0, 0x238, %o0 ! 40087e38 <MSDOS_DOT_NAME+0x1d10>
<== NOT EXECUTED
40055a5c: 81 c7 e0 08 ret
<== NOT EXECUTED
40055a60: 81 e8 00 00 restore
<== NOT EXECUTED
40056014 <rtems_rfs_group_usage>:
size_t* blocks,
size_t* inodes)
{
int g;
*blocks = 0;
40056014: c0 22 40 00 clr [ %o1 ]
<== NOT EXECUTED
*inodes = 0;
40056018: c0 22 80 00 clr [ %o2 ]
<== NOT EXECUTED
for (g = 0; g < fs->group_count; g++)
4005601c: c2 02 20 24 ld [ %o0 + 0x24 ], %g1
<== NOT EXECUTED
40056020: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40056024: 04 80 00 20 ble 400560a4 <rtems_rfs_group_usage+0x90>
<== NOT EXECUTED
40056028: 86 10 20 00 clr %g3
<== NOT EXECUTED
4005602c: c2 02 20 20 ld [ %o0 + 0x20 ], %g1
<== NOT EXECUTED
40056030: 82 00 60 14 add %g1, 0x14, %g1
<== NOT EXECUTED
{
rtems_rfs_group* group = &fs->groups[g];
*blocks +=
40056034: da 00 40 00 ld [ %g1 ], %o5
<== NOT EXECUTED
40056038: c8 00 60 04 ld [ %g1 + 4 ], %g4
<== NOT EXECUTED
4005603c: c4 02 40 00 ld [ %o1 ], %g2
<== NOT EXECUTED
40056040: 84 00 80 0d add %g2, %o5, %g2
<== NOT EXECUTED
40056044: 84 20 80 04 sub %g2, %g4, %g2
<== NOT EXECUTED
40056048: c4 22 40 00 st %g2, [ %o1 ]
<== NOT EXECUTED
for (g = 0; g < fs->group_count; g++)
4005604c: 86 00 e0 01 inc %g3
<== NOT EXECUTED
rtems_rfs_bitmap_map_size(&group->block_bitmap) -
rtems_rfs_bitmap_map_free (&group->block_bitmap);
*inodes +=
40056050: c8 00 60 28 ld [ %g1 + 0x28 ], %g4
<== NOT EXECUTED
40056054: da 00 60 24 ld [ %g1 + 0x24 ], %o5
<== NOT EXECUTED
40056058: c4 02 80 00 ld [ %o2 ], %g2
<== NOT EXECUTED
4005605c: 84 00 80 0d add %g2, %o5, %g2
<== NOT EXECUTED
40056060: 84 20 80 04 sub %g2, %g4, %g2
<== NOT EXECUTED
40056064: c4 22 80 00 st %g2, [ %o2 ]
<== NOT EXECUTED
for (g = 0; g < fs->group_count; g++)
40056068: c8 02 20 24 ld [ %o0 + 0x24 ], %g4
<== NOT EXECUTED
4005606c: 80 a1 00 03 cmp %g4, %g3
<== NOT EXECUTED
40056070: 14 bf ff f1 bg 40056034 <rtems_rfs_group_usage+0x20>
<== NOT EXECUTED
40056074: 82 00 60 50 add %g1, 0x50, %g1
<== 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))
40056078: c2 02 20 04 ld [ %o0 + 4 ], %g1
<== NOT EXECUTED
4005607c: c6 02 40 00 ld [ %o1 ], %g3
<== NOT EXECUTED
40056080: 80 a0 c0 01 cmp %g3, %g1
<== NOT EXECUTED
40056084: 38 80 00 0e bgu,a 400560bc <rtems_rfs_group_usage+0xa8>
<== NOT EXECUTED
40056088: c2 22 40 00 st %g1, [ %o1 ]
<== NOT EXECUTED
*blocks = rtems_rfs_fs_blocks (fs);
if (*inodes > rtems_rfs_fs_inodes (fs))
4005608c: c2 02 20 14 ld [ %o0 + 0x14 ], %g1
<== NOT EXECUTED
40056090: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056094: 2a 80 00 02 bcs,a 4005609c <rtems_rfs_group_usage+0x88>
<== NOT EXECUTED
40056098: c2 22 80 00 st %g1, [ %o2 ]
<== NOT EXECUTED
*inodes = rtems_rfs_fs_inodes (fs);
return 0;
}
4005609c: 81 c3 e0 08 retl
<== NOT EXECUTED
400560a0: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (*blocks > rtems_rfs_fs_blocks (fs))
400560a4: c2 02 20 04 ld [ %o0 + 4 ], %g1
<== NOT EXECUTED
400560a8: c4 02 40 00 ld [ %o1 ], %g2
<== NOT EXECUTED
400560ac: 80 a0 80 01 cmp %g2, %g1
<== NOT EXECUTED
400560b0: 08 bf ff fb bleu 4005609c <rtems_rfs_group_usage+0x88>
<== NOT EXECUTED
400560b4: 01 00 00 00 nop
<== NOT EXECUTED
*blocks = rtems_rfs_fs_blocks (fs);
400560b8: c2 22 40 00 st %g1, [ %o1 ]
<== NOT EXECUTED
400560bc: 10 bf ff f4 b 4005608c <rtems_rfs_group_usage+0x78>
<== NOT EXECUTED
400560c0: c4 02 80 00 ld [ %o2 ], %g2
<== NOT EXECUTED
400560c4 <rtems_rfs_inode_alloc>:
int
rtems_rfs_inode_alloc (rtems_rfs_file_system* fs,
rtems_rfs_bitmap_bit goal,
rtems_rfs_ino* ino)
{
400560c4: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
rtems_rfs_bitmap_bit bit;
int rc;
rc = rtems_rfs_group_bitmap_alloc (fs, goal, true, &bit);
400560c8: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
400560cc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400560d0: 96 07 bf fc add %fp, -4, %o3
<== NOT EXECUTED
400560d4: 7f ff fe 90 call 40055b14 <rtems_rfs_group_bitmap_alloc>
<== NOT EXECUTED
400560d8: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
*ino = bit;
400560dc: c2 07 bf fc ld [ %fp + -4 ], %g1
<== NOT EXECUTED
400560e0: c2 26 80 00 st %g1, [ %i2 ]
<== NOT EXECUTED
return rc;
}
400560e4: 81 c7 e0 08 ret
<== NOT EXECUTED
400560e8: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
4005637c <rtems_rfs_inode_close>:
{
4005637c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CLOSE))
40056380: 90 10 20 00 clr %o0
<== NOT EXECUTED
40056384: 40 00 07 07 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056388: 13 00 02 00 sethi %hi(0x80000), %o1
<== NOT EXECUTED
4005638c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056390: 32 80 00 16 bne,a 400563e8 <rtems_rfs_inode_close+0x6c>
<== NOT EXECUTED
40056394: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
rc = rtems_rfs_inode_unload (fs, handle, true);
40056398: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
4005639c: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
400563a0: 7f ff ff b9 call 40056284 <rtems_rfs_inode_unload>
<== NOT EXECUTED
400563a4: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
if ((rc == 0) && (handle->loads > 0))
400563a8: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400563ac: 32 80 00 0d bne,a 400563e0 <rtems_rfs_inode_close+0x64>
<== NOT EXECUTED
400563b0: c0 26 60 08 clr [ %i1 + 8 ]
<== NOT EXECUTED
400563b4: c2 06 60 24 ld [ %i1 + 0x24 ], %g1
<== NOT EXECUTED
400563b8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400563bc: 04 80 00 08 ble 400563dc <rtems_rfs_inode_close+0x60>
<== NOT EXECUTED
400563c0: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CLOSE))
400563c4: 13 00 02 00 sethi %hi(0x80000), %o1
<== NOT EXECUTED
400563c8: 40 00 06 f6 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400563cc: b0 10 20 05 mov 5, %i0
<== NOT EXECUTED
400563d0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400563d4: 32 80 00 0a bne,a 400563fc <rtems_rfs_inode_close+0x80>
<== NOT EXECUTED
400563d8: d2 06 60 24 ld [ %i1 + 0x24 ], %o1
<== NOT EXECUTED
handle->ino = 0;
400563dc: c0 26 60 08 clr [ %i1 + 8 ]
<== NOT EXECUTED
}
400563e0: 81 c7 e0 08 ret
<== NOT EXECUTED
400563e4: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: inode-close: ino: %" PRIu32 "\n", handle->ino);
400563e8: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
400563ec: 7f ff 96 57 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400563f0: 90 12 20 08 or %o0, 8, %o0 ! 40088008 <MSDOS_DOT_NAME+0x1ee0>
<== NOT EXECUTED
rc = rtems_rfs_inode_unload (fs, handle, true);
400563f4: 10 bf ff ea b 4005639c <rtems_rfs_inode_close+0x20>
<== NOT EXECUTED
400563f8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
printf ("rtems-rfs: inode-close: bad loads number: %d\n",
400563fc: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056400: 7f ff 96 52 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056404: 90 12 20 30 or %o0, 0x30, %o0 ! 40088030 <MSDOS_DOT_NAME+0x1f08>
<== NOT EXECUTED
40056408: c0 26 60 08 clr [ %i1 + 8 ]
<== NOT EXECUTED
4005640c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056410: 81 e8 00 00 restore
<== NOT EXECUTED
40056720 <rtems_rfs_inode_create>:
{
40056720: 9d e3 bf 50 save %sp, -176, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CREATE))
40056724: 90 10 20 00 clr %o0
<== NOT EXECUTED
{
40056728: e6 17 a0 5e lduh [ %fp + 0x5e ], %l3
<== NOT EXECUTED
4005672c: e8 17 a0 62 lduh [ %fp + 0x62 ], %l4
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CREATE))
40056730: 13 00 10 00 sethi %hi(0x400000), %o1
<== NOT EXECUTED
40056734: 40 00 06 1b call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056738: a2 0f 30 00 and %i4, -4096, %l1
<== NOT EXECUTED
{
4005673c: aa 10 00 18 mov %i0, %l5
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_CREATE))
40056740: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056744: 02 80 00 2c be 400567f4 <rtems_rfs_inode_create+0xd4>
<== NOT EXECUTED
40056748: a3 2c 60 10 sll %l1, 0x10, %l1
<== NOT EXECUTED
if (RTEMS_RFS_S_ISDIR (mode))
4005674c: 83 34 60 10 srl %l1, 0x10, %g1
<== NOT EXECUTED
40056750: 05 00 00 10 sethi %hi(0x4000), %g2
<== NOT EXECUTED
40056754: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056758: 02 80 00 11 be 4005679c <rtems_rfs_inode_create+0x7c>
<== NOT EXECUTED
4005675c: 05 00 00 08 sethi %hi(0x2000), %g2
<== NOT EXECUTED
else if (RTEMS_RFS_S_ISCHR (mode))
40056760: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056764: 02 80 00 56 be 400568bc <rtems_rfs_inode_create+0x19c>
<== NOT EXECUTED
40056768: 05 00 00 18 sethi %hi(0x6000), %g2
<== NOT EXECUTED
else if (RTEMS_RFS_S_ISBLK (mode))
4005676c: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056770: 02 80 00 50 be 400568b0 <rtems_rfs_inode_create+0x190>
<== NOT EXECUTED
40056774: 05 00 00 20 sethi %hi(0x8000), %g2
<== NOT EXECUTED
else if (RTEMS_RFS_S_ISREG (mode))
40056778: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
4005677c: 02 80 00 73 be 40056948 <rtems_rfs_inode_create+0x228>
<== NOT EXECUTED
40056780: 05 00 00 28 sethi %hi(0xa000), %g2
<== NOT EXECUTED
else if (RTEMS_RFS_S_ISLNK (mode))
40056784: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056788: 22 80 00 73 be,a 40056954 <rtems_rfs_inode_create+0x234>
<== NOT EXECUTED
4005678c: 31 10 02 20 sethi %hi(0x40088000), %i0
<== NOT EXECUTED
const char* type = "unknown";
40056790: 31 10 02 20 sethi %hi(0x40088000), %i0
<== NOT EXECUTED
40056794: 10 80 00 04 b 400567a4 <rtems_rfs_inode_create+0x84>
<== NOT EXECUTED
40056798: b0 16 20 98 or %i0, 0x98, %i0 ! 40088098 <MSDOS_DOT_NAME+0x1f70>
<== NOT EXECUTED
type = "dir";
4005679c: 31 10 01 f9 sethi %hi(0x4007e400), %i0
<== NOT EXECUTED
400567a0: b0 16 22 00 or %i0, 0x200, %i0 ! 4007e600 <suffixes+0x10>
<== NOT EXECUTED
printf("rtems-rfs: inode-create: parent:%" PRIu32 " name:", parent);
400567a4: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
400567a8: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
400567ac: 7f ff 95 67 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400567b0: 90 12 20 a8 or %o0, 0xa8, %o0 ! 400880a8 <MSDOS_DOT_NAME+0x1f80>
<== NOT EXECUTED
for (c = 0; c < length; c++)
400567b4: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
400567b8: 02 80 00 0a be 400567e0 <rtems_rfs_inode_create+0xc0>
<== NOT EXECUTED
400567bc: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
400567c0: a0 10 00 1a mov %i2, %l0
<== NOT EXECUTED
400567c4: a4 06 c0 1a add %i3, %i2, %l2
<== NOT EXECUTED
printf ("%c", name[c]);
400567c8: 7f ff 95 75 call 4003bd9c <__wrap_putchar>
<== NOT EXECUTED
400567cc: d0 4c 00 00 ldsb [ %l0 ], %o0
<== NOT EXECUTED
400567d0: a0 04 20 01 inc %l0
<== NOT EXECUTED
for (c = 0; c < length; c++)
400567d4: 80 a4 80 10 cmp %l2, %l0
<== NOT EXECUTED
400567d8: 12 bf ff fc bne 400567c8 <rtems_rfs_inode_create+0xa8>
<== NOT EXECUTED
400567dc: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
printf (" type:%s mode:%04x (%03o)\n", type, mode, mode & ((1 << 10) - 1));
400567e0: 96 0f 23 ff and %i4, 0x3ff, %o3
<== NOT EXECUTED
400567e4: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
400567e8: 92 10 00 18 mov %i0, %o1
<== NOT EXECUTED
400567ec: 7f ff 95 57 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400567f0: 90 12 20 d8 or %o0, 0xd8, %o0
<== NOT EXECUTED
switch (mode & RTEMS_RFS_S_IFMT)
400567f4: 83 34 60 10 srl %l1, 0x10, %g1
<== NOT EXECUTED
400567f8: 05 00 00 18 sethi %hi(0x6000), %g2
<== NOT EXECUTED
400567fc: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056800: 02 80 00 14 be 40056850 <rtems_rfs_inode_create+0x130>
<== NOT EXECUTED
40056804: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40056808: 18 80 00 0b bgu 40056834 <rtems_rfs_inode_create+0x114>
<== NOT EXECUTED
4005680c: 05 00 00 20 sethi %hi(0x8000), %g2
<== NOT EXECUTED
40056810: 05 00 00 08 sethi %hi(0x2000), %g2
<== NOT EXECUTED
40056814: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056818: 02 80 00 0e be 40056850 <rtems_rfs_inode_create+0x130>
<== NOT EXECUTED
4005681c: 05 00 00 10 sethi %hi(0x4000), %g2
<== NOT EXECUTED
40056820: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056824: 02 80 00 0c be 40056854 <rtems_rfs_inode_create+0x134>
<== NOT EXECUTED
40056828: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
return EINVAL;
4005682c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056830: 91 e8 20 16 restore %g0, 0x16, %o0
<== NOT EXECUTED
switch (mode & RTEMS_RFS_S_IFMT)
40056834: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056838: 02 80 00 05 be 4005684c <rtems_rfs_inode_create+0x12c>
<== NOT EXECUTED
4005683c: 05 00 00 28 sethi %hi(0xa000), %g2
<== NOT EXECUTED
40056840: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056844: 12 bf ff fa bne 4005682c <rtems_rfs_inode_create+0x10c>
<== NOT EXECUTED
40056848: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_group_bitmap_alloc (fs, goal, true, &bit);
4005684c: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40056850: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40056854: 96 07 bf d8 add %fp, -40, %o3
<== NOT EXECUTED
40056858: 7f ff fc af call 40055b14 <rtems_rfs_group_bitmap_alloc>
<== NOT EXECUTED
4005685c: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
*ino = bit;
40056860: d2 07 bf d8 ld [ %fp + -40 ], %o1
<== NOT EXECUTED
40056864: c2 07 a0 64 ld [ %fp + 0x64 ], %g1
<== NOT EXECUTED
40056868: d2 20 40 00 st %o1, [ %g1 ]
<== NOT EXECUTED
if (rc > 0)
4005686c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056870: 14 80 00 0e bg 400568a8 <rtems_rfs_inode_create+0x188>
<== NOT EXECUTED
40056874: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, *ino, &inode, true);
40056878: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
4005687c: 94 07 bf d8 add %fp, -40, %o2
<== NOT EXECUTED
40056880: 7f ff fe 48 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40056884: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
if (rc > 0)
40056888: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
4005688c: 04 80 00 0f ble 400568c8 <rtems_rfs_inode_create+0x1a8>
<== NOT EXECUTED
40056890: 98 10 00 14 mov %l4, %o4
<== NOT EXECUTED
return rtems_rfs_group_bitmap_free (fs, true, bit);
40056894: c2 07 a0 64 ld [ %fp + 0x64 ], %g1
<== NOT EXECUTED
40056898: d4 00 40 00 ld [ %g1 ], %o2
<== NOT EXECUTED
4005689c: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
400568a0: 7f ff fd 4b call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
400568a4: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
return rc;
400568a8: 81 c7 e0 08 ret
<== NOT EXECUTED
400568ac: 81 e8 00 00 restore
<== NOT EXECUTED
type = "block";
400568b0: 31 10 02 09 sethi %hi(0x40082400), %i0
<== NOT EXECUTED
400568b4: 10 bf ff bc b 400567a4 <rtems_rfs_inode_create+0x84>
<== NOT EXECUTED
400568b8: b0 16 22 c0 or %i0, 0x2c0, %i0 ! 400826c0 <rtems_rfs_rtems_eval_config+0x7b4>
<== NOT EXECUTED
type = "char";
400568bc: 31 10 02 20 sethi %hi(0x40088000), %i0
<== NOT EXECUTED
400568c0: 10 bf ff b9 b 400567a4 <rtems_rfs_inode_create+0x84>
<== NOT EXECUTED
400568c4: b0 16 20 90 or %i0, 0x90, %i0 ! 40088090 <MSDOS_DOT_NAME+0x1f68>
<== NOT EXECUTED
rc = rtems_rfs_inode_initialise (&inode, links, mode, uid, gid);
400568c8: 96 10 00 13 mov %l3, %o3
<== NOT EXECUTED
400568cc: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
400568d0: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400568d4: 7f ff ff 43 call 400565e0 <rtems_rfs_inode_initialise>
<== NOT EXECUTED
400568d8: 90 07 bf d8 add %fp, -40, %o0
<== NOT EXECUTED
if (rc > 0)
400568dc: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400568e0: 14 80 00 16 bg 40056938 <rtems_rfs_inode_create+0x218>
<== NOT EXECUTED
400568e4: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
if (RTEMS_RFS_S_ISDIR (mode))
400568e8: 03 10 00 00 sethi %hi(0x40000000), %g1
<== NOT EXECUTED
400568ec: 80 a4 40 01 cmp %l1, %g1
<== NOT EXECUTED
400568f0: 02 80 00 3d be 400569e4 <rtems_rfs_inode_create+0x2c4>
<== NOT EXECUTED
400568f4: c2 07 a0 64 ld [ %fp + 0x64 ], %g1
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, parent, &parent_inode, true);
400568f8: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
400568fc: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40056900: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40056904: 7f ff fe 27 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40056908: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
if (rc > 0)
4005690c: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056910: 04 80 00 13 ble 4005695c <rtems_rfs_inode_create+0x23c>
<== NOT EXECUTED
40056914: c2 07 a0 64 ld [ %fp + 0x64 ], %g1
<== NOT EXECUTED
rtems_rfs_inode_delete (fs, &inode);
40056918: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
4005691c: 7f ff fe be call 40056414 <rtems_rfs_inode_delete>
<== NOT EXECUTED
40056920: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
40056924: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056928: 7f ff fe 95 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
4005692c: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
return rc;
40056930: 81 c7 e0 08 ret
<== NOT EXECUTED
40056934: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
40056938: 7f ff fe 91 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
4005693c: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
return rtems_rfs_group_bitmap_free (fs, true, bit);
40056940: 10 bf ff d6 b 40056898 <rtems_rfs_inode_create+0x178>
<== NOT EXECUTED
40056944: c2 07 a0 64 ld [ %fp + 0x64 ], %g1
<== NOT EXECUTED
type = "file";
40056948: 31 10 02 06 sethi %hi(0x40081800), %i0
<== NOT EXECUTED
4005694c: 10 bf ff 96 b 400567a4 <rtems_rfs_inode_create+0x84>
<== NOT EXECUTED
40056950: b0 16 23 30 or %i0, 0x330, %i0 ! 40081b30 <__func__.8659+0x3f0>
<== NOT EXECUTED
type = "link";
40056954: 10 bf ff 94 b 400567a4 <rtems_rfs_inode_create+0x84>
<== NOT EXECUTED
40056958: b0 16 20 a0 or %i0, 0xa0, %i0
<== NOT EXECUTED
rc = rtems_rfs_dir_add_entry (fs, &parent_inode, name, length, *ino);
4005695c: d8 00 40 00 ld [ %g1 ], %o4
<== NOT EXECUTED
40056960: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
40056964: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40056968: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
4005696c: 7f ff ed d3 call 400520b8 <rtems_rfs_dir_add_entry>
<== NOT EXECUTED
40056970: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
if (rc > 0)
40056974: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056978: 14 80 00 32 bg 40056a40 <rtems_rfs_inode_create+0x320>
<== NOT EXECUTED
4005697c: 03 10 00 00 sethi %hi(0x40000000), %g1
<== NOT EXECUTED
if (RTEMS_RFS_S_ISDIR (mode))
40056980: 80 a4 40 01 cmp %l1, %g1
<== NOT EXECUTED
40056984: 02 80 00 3a be 40056a6c <rtems_rfs_inode_create+0x34c>
<== NOT EXECUTED
40056988: c6 07 bf bc ld [ %fp + -68 ], %g3
<== NOT EXECUTED
rc = rtems_rfs_inode_time_stamp_now (&parent_inode, true, true);
4005698c: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40056990: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40056994: 7f ff fe ea call 4005653c <rtems_rfs_inode_time_stamp_now>
<== NOT EXECUTED
40056998: 90 07 bf b0 add %fp, -80, %o0
<== NOT EXECUTED
if (rc > 0)
4005699c: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400569a0: 14 bf ff df bg 4005691c <rtems_rfs_inode_create+0x1fc>
<== NOT EXECUTED
400569a4: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &parent_inode);
400569a8: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
400569ac: 7f ff fe 74 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400569b0: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
rtems_rfs_inode_delete (fs, &inode);
400569b4: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &parent_inode);
400569b8: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
if (rc > 0)
400569bc: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
400569c0: 04 80 00 3e ble 40056ab8 <rtems_rfs_inode_create+0x398>
<== NOT EXECUTED
400569c4: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
rtems_rfs_inode_delete (fs, &inode);
400569c8: 7f ff fe 93 call 40056414 <rtems_rfs_inode_delete>
<== NOT EXECUTED
400569cc: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
400569d0: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
400569d4: 7f ff fe 6a call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400569d8: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
return rc;
400569dc: 81 c7 e0 08 ret
<== NOT EXECUTED
400569e0: 81 e8 00 00 restore
<== NOT EXECUTED
rc = rtems_rfs_dir_add_entry (fs, &inode, ".", 1, *ino);
400569e4: d8 00 40 00 ld [ %g1 ], %o4
<== NOT EXECUTED
400569e8: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
400569ec: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
400569f0: 15 10 01 fc sethi %hi(0x4007f000), %o2
<== NOT EXECUTED
400569f4: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
400569f8: 7f ff ed b0 call 400520b8 <rtems_rfs_dir_add_entry>
<== NOT EXECUTED
400569fc: 94 12 a1 e0 or %o2, 0x1e0, %o2
<== NOT EXECUTED
if (rc == 0)
40056a00: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056a04: 12 80 00 0b bne 40056a30 <rtems_rfs_inode_create+0x310>
<== NOT EXECUTED
40056a08: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
rc = rtems_rfs_dir_add_entry (fs, &inode, "..", 2, parent);
40056a0c: 98 10 00 19 mov %i1, %o4
<== NOT EXECUTED
40056a10: 96 10 20 02 mov 2, %o3
<== NOT EXECUTED
40056a14: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056a18: 15 10 01 f3 sethi %hi(0x4007cc00), %o2
<== NOT EXECUTED
40056a1c: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
40056a20: 7f ff ed a6 call 400520b8 <rtems_rfs_dir_add_entry>
<== NOT EXECUTED
40056a24: 94 12 a3 48 or %o2, 0x348, %o2
<== NOT EXECUTED
40056a28: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
if (rc > 0)
40056a2c: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
40056a30: 04 bf ff b3 ble 400568fc <rtems_rfs_inode_create+0x1dc>
<== NOT EXECUTED
40056a34: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40056a38: 10 bf ff b9 b 4005691c <rtems_rfs_inode_create+0x1fc>
<== NOT EXECUTED
40056a3c: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
rtems_rfs_inode_delete (fs, &inode);
40056a40: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056a44: 7f ff fe 74 call 40056414 <rtems_rfs_inode_delete>
<== NOT EXECUTED
40056a48: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
40056a4c: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056a50: 7f ff fe 4b call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056a54: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &parent_inode);
40056a58: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40056a5c: 7f ff fe 48 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056a60: 90 10 00 15 mov %l5, %o0
<== NOT EXECUTED
return rc;
40056a64: 81 c7 e0 08 ret
<== NOT EXECUTED
40056a68: 81 e8 00 00 restore
<== NOT EXECUTED
links = rtems_rfs_read_u16 (&handle->node->links);
40056a6c: c4 08 e0 01 ldub [ %g3 + 1 ], %g2
<== NOT EXECUTED
40056a70: c2 08 c0 00 ldub [ %g3 ], %g1
<== NOT EXECUTED
40056a74: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
if (links == 0xffff)
40056a78: 09 00 00 3f sethi %hi(0xfc00), %g4
<== NOT EXECUTED
links = rtems_rfs_read_u16 (&handle->node->links);
40056a7c: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if (links == 0xffff)
40056a80: 88 11 23 ff or %g4, 0x3ff, %g4
<== NOT EXECUTED
40056a84: 80 a0 40 04 cmp %g1, %g4
<== NOT EXECUTED
40056a88: 12 80 00 03 bne 40056a94 <rtems_rfs_inode_create+0x374>
<== NOT EXECUTED
40056a8c: 84 10 00 01 mov %g1, %g2
<== NOT EXECUTED
links = 0;
40056a90: 84 10 20 00 clr %g2
<== NOT EXECUTED
rtems_rfs_inode_set_links (&parent_inode,
40056a94: 82 00 a0 01 add %g2, 1, %g1
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->links, links);
40056a98: 85 28 60 10 sll %g1, 0x10, %g2
<== NOT EXECUTED
40056a9c: 85 30 a0 18 srl %g2, 0x18, %g2
<== NOT EXECUTED
40056aa0: c4 28 c0 00 stb %g2, [ %g3 ]
<== NOT EXECUTED
40056aa4: c4 07 bf bc ld [ %fp + -68 ], %g2
<== NOT EXECUTED
40056aa8: c2 28 a0 01 stb %g1, [ %g2 + 1 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40056aac: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40056ab0: 10 bf ff b7 b 4005698c <rtems_rfs_inode_create+0x26c>
<== NOT EXECUTED
40056ab4: c2 2f bf c0 stb %g1, [ %fp + -64 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &inode);
40056ab8: 7f ff fe 31 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056abc: 01 00 00 00 nop
<== NOT EXECUTED
if (rc > 0)
40056ac0: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056ac4: 14 bf ff 75 bg 40056898 <rtems_rfs_inode_create+0x178>
<== NOT EXECUTED
40056ac8: c2 07 a0 64 ld [ %fp + 0x64 ], %g1
<== NOT EXECUTED
}
40056acc: 81 c7 e0 08 ret
<== NOT EXECUTED
40056ad0: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
40056414 <rtems_rfs_inode_delete>:
}
int
rtems_rfs_inode_delete (rtems_rfs_file_system* fs,
rtems_rfs_inode_handle* handle)
{
40056414: 9d e3 bf 50 save %sp, -176, %sp
<== NOT EXECUTED
int rc = 0;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_DELETE))
40056418: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005641c: 40 00 06 e1 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056420: 13 00 20 00 sethi %hi(0x800000), %o1
<== NOT EXECUTED
40056424: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056428: 02 80 00 0b be 40056454 <rtems_rfs_inode_delete+0x40>
<== NOT EXECUTED
4005642c: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
printf("rtems-rfs: inode-delete: ino:%" PRIu32 " loaded:%s\n",
40056430: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40056434: 02 80 00 14 be 40056484 <rtems_rfs_inode_delete+0x70>
<== NOT EXECUTED
40056438: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
4005643c: 15 10 02 02 sethi %hi(0x40080800), %o2
<== NOT EXECUTED
40056440: 94 12 a1 e0 or %o2, 0x1e0, %o2 ! 400809e0 <rtems_rtc_shell_usage+0x558>
<== NOT EXECUTED
40056444: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056448: 7f ff 96 40 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005644c: 90 12 20 60 or %o0, 0x60, %o0 ! 40088060 <MSDOS_DOT_NAME+0x1f38>
<== NOT EXECUTED
rtems_rfs_inode_ino (handle),
rtems_rfs_inode_is_loaded (handle) ? "yes" : "no");
if (rtems_rfs_inode_is_loaded (handle))
40056450: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
40056454: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40056458: 02 80 00 09 be 4005647c <rtems_rfs_inode_delete+0x68>
<== NOT EXECUTED
4005645c: ba 10 20 00 clr %i5
<== NOT EXECUTED
return rtems_rfs_group_bitmap_free (fs, true, bit);
40056460: d4 06 60 08 ld [ %i1 + 8 ], %o2
<== NOT EXECUTED
40056464: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40056468: 7f ff fe 59 call 40055dcc <rtems_rfs_group_bitmap_free>
<== NOT EXECUTED
4005646c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
/*
* Free the ino number.
*/
rc = rtems_rfs_inode_free (fs, handle->ino);
if (rc > 0)
40056470: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40056474: 04 80 00 07 ble 40056490 <rtems_rfs_inode_delete+0x7c>
<== NOT EXECUTED
40056478: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
if (rrc > 0)
rc = rrc;
}
}
return rc;
}
4005647c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056480: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
printf("rtems-rfs: inode-delete: ino:%" PRIu32 " loaded:%s\n",
40056484: 15 10 02 02 sethi %hi(0x40080800), %o2
<== NOT EXECUTED
40056488: 10 bf ff ef b 40056444 <rtems_rfs_inode_delete+0x30>
<== NOT EXECUTED
4005648c: 94 12 a1 d8 or %o2, 0x1d8, %o2 ! 400809d8 <rtems_rtc_shell_usage+0x550>
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, handle, &map);
40056490: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40056494: 7f ff e7 a3 call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
40056498: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc == 0)
4005649c: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400564a0: 12 bf ff f7 bne 4005647c <rtems_rfs_inode_delete+0x68>
<== NOT EXECUTED
400564a4: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
rrc = rtems_rfs_block_map_free_all (fs, &map);
400564a8: 7f ff ea b6 call 40050f80 <rtems_rfs_block_map_free_all>
<== NOT EXECUTED
400564ac: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_close (fs, &map);
400564b0: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
rrc = rtems_rfs_block_map_free_all (fs, &map);
400564b4: b6 10 00 08 mov %o0, %i3
<== NOT EXECUTED
rc = rtems_rfs_block_map_close (fs, &map);
400564b8: 7f ff e7 f9 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400564bc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400564c0: b8 06 60 10 add %i1, 0x10, %i4
<== NOT EXECUTED
400564c4: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
memset (handle->node, 0xff, RTEMS_RFS_INODE_SIZE);
400564c8: 94 10 20 38 mov 0x38, %o2
<== NOT EXECUTED
400564cc: d0 06 60 0c ld [ %i1 + 0xc ], %o0
<== NOT EXECUTED
if (rc > 0)
400564d0: 80 a7 60 00 cmp %i5, 0
<== NOT EXECUTED
400564d4: 04 80 00 0c ble 40056504 <rtems_rfs_inode_delete+0xf0>
<== NOT EXECUTED
400564d8: 92 10 20 ff mov 0xff, %o1
<== NOT EXECUTED
memset (handle->node, 0xff, RTEMS_RFS_INODE_SIZE);
400564dc: 40 00 2b 47 call 400611f8 <memset>
<== NOT EXECUTED
400564e0: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
400564e4: 82 10 20 01 mov 1, %g1 ! 1 <_TLS_Alignment>
<== NOT EXECUTED
400564e8: c2 2e 60 10 stb %g1, [ %i1 + 0x10 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);
400564ec: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
400564f0: 7f ff ec 6d call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400564f4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->loads = 0;
400564f8: c0 26 60 24 clr [ %i1 + 0x24 ]
<== NOT EXECUTED
handle->node = NULL;
400564fc: 10 bf ff e0 b 4005647c <rtems_rfs_inode_delete+0x68>
<== NOT EXECUTED
40056500: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
memset (handle->node, 0xff, RTEMS_RFS_INODE_SIZE);
40056504: 40 00 2b 3d call 400611f8 <memset>
<== NOT EXECUTED
40056508: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
4005650c: 82 10 20 01 mov 1, %g1 ! 1 <_TLS_Alignment>
<== NOT EXECUTED
40056510: c2 2e 60 10 stb %g1, [ %i1 + 0x10 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);
40056514: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
40056518: 7f ff ec 63 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
4005651c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->loads = 0;
40056520: c0 26 60 24 clr [ %i1 + 0x24 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);
40056524: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
if (rrc > 0)
40056528: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
4005652c: 04 bf ff d4 ble 4005647c <rtems_rfs_inode_delete+0x68>
<== NOT EXECUTED
40056530: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
40056534: 10 bf ff d2 b 4005647c <rtems_rfs_inode_delete+0x68>
<== NOT EXECUTED
40056538: ba 10 00 1b mov %i3, %i5
<== NOT EXECUTED
40056ad4 <rtems_rfs_inode_get_size>:
rtems_rfs_pos
rtems_rfs_inode_get_size (rtems_rfs_file_system* fs,
rtems_rfs_inode_handle* handle)
{
40056ad4: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
40056ad8: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
40056adc: fa 08 60 0f ldub [ %g1 + 0xf ], %i5
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->block_offset);
40056ae0: f6 08 60 0b ldub [ %g1 + 0xb ], %i3
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
40056ae4: f8 08 60 0c ldub [ %g1 + 0xc ], %i4
<== NOT EXECUTED
40056ae8: c8 08 60 0d ldub [ %g1 + 0xd ], %g4
<== NOT EXECUTED
40056aec: c6 08 60 0e ldub [ %g1 + 0xe ], %g3
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->block_offset);
40056af0: c4 08 60 0a ldub [ %g1 + 0xa ], %g2
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
40056af4: 87 28 e0 08 sll %g3, 8, %g3
<== NOT EXECUTED
40056af8: b9 2f 20 18 sll %i4, 0x18, %i4
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->block_offset);
40056afc: 83 28 a0 08 sll %g2, 8, %g1
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
40056b00: 89 29 20 10 sll %g4, 0x10, %g4
<== NOT EXECUTED
rtems_rfs_block_size size;
size.count = rtems_rfs_inode_get_block_count (handle);
size.offset = rtems_rfs_inode_get_block_offset (handle);
40056b04: 82 10 40 1b or %g1, %i3, %g1
<== NOT EXECUTED
40056b08: 88 11 00 1c or %g4, %i4, %g4
<== NOT EXECUTED
40056b0c: 84 10 c0 04 or %g3, %g4, %g2
<== NOT EXECUTED
40056b10: 84 17 40 02 or %i5, %g2, %g2
<== NOT EXECUTED
40056b14: c2 27 bf fc st %g1, [ %fp + -4 ]
<== NOT EXECUTED
return rtems_rfs_block_get_size (fs, &size);
40056b18: 92 07 bf f8 add %fp, -8, %o1
<== NOT EXECUTED
size.count = rtems_rfs_inode_get_block_count (handle);
40056b1c: c4 27 bf f8 st %g2, [ %fp + -8 ]
<== NOT EXECUTED
return rtems_rfs_block_get_size (fs, &size);
40056b20: 7f ff e5 ed call 400502d4 <rtems_rfs_block_get_size>
<== NOT EXECUTED
40056b24: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
}
40056b28: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
40056b2c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056b30: 93 e8 00 09 restore %g0, %o1, %o1
<== NOT EXECUTED
400565e0 <rtems_rfs_inode_initialise>:
rtems_rfs_write_u16 (&handle->node->links, links);
400565e0: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
400565e4: 87 32 60 08 srl %o1, 8, %g3
<== NOT EXECUTED
400565e8: c6 28 80 00 stb %g3, [ %g2 ]
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->mode, mode);
400565ec: 87 32 a0 08 srl %o2, 8, %g3
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->links, links);
400565f0: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
400565f4: d2 28 a0 01 stb %o1, [ %g2 + 1 ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->owner, (((uint32_t) gid) << 16) | uid);
400565f8: 99 2b 20 10 sll %o4, 0x10, %o4
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->flags, flags);
400565fc: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
40056600: c0 28 a0 08 clrb [ %g2 + 8 ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->owner, (((uint32_t) gid) << 16) | uid);
40056604: 98 13 00 0b or %o4, %o3, %o4
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->flags, flags);
40056608: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
4005660c: c0 28 a0 09 clrb [ %g2 + 9 ]
<== NOT EXECUTED
{
40056610: 82 10 00 08 mov %o0, %g1
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->mode, mode);
40056614: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
40056618: c6 28 a0 02 stb %g3, [ %g2 + 2 ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->owner, (((uint32_t) gid) << 16) | uid);
4005661c: 87 33 20 18 srl %o4, 0x18, %g3
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->mode, mode);
40056620: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
40056624: d4 28 a0 03 stb %o2, [ %g2 + 3 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40056628: 88 10 20 01 mov 1, %g4
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->owner, (((uint32_t) gid) << 16) | uid);
4005662c: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
40056630: c6 28 a0 04 stb %g3, [ %g2 + 4 ]
<== NOT EXECUTED
40056634: 87 33 20 10 srl %o4, 0x10, %g3
<== NOT EXECUTED
40056638: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
4005663c: c6 28 a0 05 stb %g3, [ %g2 + 5 ]
<== NOT EXECUTED
40056640: 99 33 20 08 srl %o4, 8, %o4
<== NOT EXECUTED
40056644: c4 02 20 0c ld [ %o0 + 0xc ], %g2
<== NOT EXECUTED
40056648: d8 28 a0 06 stb %o4, [ %g2 + 6 ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->block_count, block_count);
4005664c: 84 10 20 1c mov 0x1c, %g2
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->owner, (((uint32_t) gid) << 16) | uid);
40056650: c6 02 20 0c ld [ %o0 + 0xc ], %g3
<== NOT EXECUTED
40056654: d6 28 e0 07 stb %o3, [ %g3 + 7 ]
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->block_offset, block_offset);
40056658: c6 02 20 0c ld [ %o0 + 0xc ], %g3
<== NOT EXECUTED
4005665c: c0 28 e0 0a clrb [ %g3 + 0xa ]
<== NOT EXECUTED
40056660: c6 02 20 0c ld [ %o0 + 0xc ], %g3
<== NOT EXECUTED
40056664: c0 28 e0 0b clrb [ %g3 + 0xb ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->block_count, block_count);
40056668: c6 02 20 0c ld [ %o0 + 0xc ], %g3
<== NOT EXECUTED
4005666c: c0 28 e0 0c clrb [ %g3 + 0xc ]
<== NOT EXECUTED
40056670: c6 02 20 0c ld [ %o0 + 0xc ], %g3
<== NOT EXECUTED
40056674: c0 28 e0 0d clrb [ %g3 + 0xd ]
<== NOT EXECUTED
40056678: c6 02 20 0c ld [ %o0 + 0xc ], %g3
<== NOT EXECUTED
4005667c: c0 28 e0 0e clrb [ %g3 + 0xe ]
<== NOT EXECUTED
40056680: c6 02 20 0c ld [ %o0 + 0xc ], %g3
<== NOT EXECUTED
40056684: c0 28 e0 0f clrb [ %g3 + 0xf ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->data.blocks[block], bno);
40056688: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
4005668c: c0 28 c0 02 clrb [ %g3 + %g2 ]
<== NOT EXECUTED
40056690: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
40056694: 86 00 c0 02 add %g3, %g2, %g3
<== NOT EXECUTED
40056698: c0 28 e0 01 clrb [ %g3 + 1 ]
<== NOT EXECUTED
4005669c: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
400566a0: 86 00 c0 02 add %g3, %g2, %g3
<== NOT EXECUTED
400566a4: c0 28 e0 02 clrb [ %g3 + 2 ]
<== NOT EXECUTED
400566a8: c6 00 60 0c ld [ %g1 + 0xc ], %g3
<== NOT EXECUTED
400566ac: 86 00 c0 02 add %g3, %g2, %g3
<== NOT EXECUTED
400566b0: c0 28 e0 03 clrb [ %g3 + 3 ]
<== NOT EXECUTED
400566b4: 84 00 a0 04 add %g2, 4, %g2
<== NOT EXECUTED
for (b = 0; b < RTEMS_RFS_INODE_BLOCKS; b++)
400566b8: 80 a0 a0 30 cmp %g2, 0x30
<== NOT EXECUTED
400566bc: 12 bf ff f3 bne 40056688 <rtems_rfs_inode_initialise+0xa8>
<== NOT EXECUTED
400566c0: c8 28 60 10 stb %g4, [ %g1 + 0x10 ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->last_map_block, last_map_block);
400566c4: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400566c8: c0 28 a0 30 clrb [ %g2 + 0x30 ]
<== NOT EXECUTED
return rtems_rfs_inode_time_stamp_now (handle, true, true);
400566cc: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
400566d0: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400566d4: c0 28 a0 31 clrb [ %g2 + 0x31 ]
<== NOT EXECUTED
400566d8: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
400566dc: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400566e0: c0 28 a0 32 clrb [ %g2 + 0x32 ]
<== NOT EXECUTED
400566e4: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
400566e8: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400566ec: c0 28 a0 33 clrb [ %g2 + 0x33 ]
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->last_data_block, last_data_block);
400566f0: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400566f4: c0 28 a0 34 clrb [ %g2 + 0x34 ]
<== NOT EXECUTED
400566f8: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
400566fc: c0 28 a0 35 clrb [ %g2 + 0x35 ]
<== NOT EXECUTED
40056700: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
40056704: c0 28 a0 36 clrb [ %g2 + 0x36 ]
<== NOT EXECUTED
40056708: c4 00 60 0c ld [ %g1 + 0xc ], %g2
<== NOT EXECUTED
4005670c: c0 28 a0 37 clrb [ %g2 + 0x37 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40056710: c8 28 60 10 stb %g4, [ %g1 + 0x10 ]
<== NOT EXECUTED
40056714: 82 13 c0 00 mov %o7, %g1
<== NOT EXECUTED
40056718: 7f ff ff 89 call 4005653c <rtems_rfs_inode_time_stamp_now>
<== NOT EXECUTED
4005671c: 9e 10 40 00 mov %g1, %o7
<== NOT EXECUTED
400560ec <rtems_rfs_inode_load>:
}
int
rtems_rfs_inode_load (rtems_rfs_file_system* fs,
rtems_rfs_inode_handle* handle)
{
400560ec: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_LOAD))
400560f0: 90 10 20 00 clr %o0
<== NOT EXECUTED
400560f4: 40 00 07 ab call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400560f8: 13 00 04 00 sethi %hi(0x100000), %o1
<== NOT EXECUTED
400560fc: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056100: 02 80 00 0c be 40056130 <rtems_rfs_inode_load+0x44>
<== NOT EXECUTED
40056104: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
printf ("rtems-rfs: inode-load: ino=%" PRIu32 " loads=%i loaded=%s\n",
40056108: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
4005610c: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40056110: 02 80 00 11 be 40056154 <rtems_rfs_inode_load+0x68>
<== NOT EXECUTED
40056114: d4 06 60 24 ld [ %i1 + 0x24 ], %o2
<== NOT EXECUTED
40056118: 17 10 02 02 sethi %hi(0x40080800), %o3
<== NOT EXECUTED
4005611c: 96 12 e1 e0 or %o3, 0x1e0, %o3 ! 400809e0 <rtems_rtc_shell_usage+0x558>
<== NOT EXECUTED
40056120: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40056124: 7f ff 97 09 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056128: 90 12 23 70 or %o0, 0x370, %o0 ! 40087f70 <MSDOS_DOT_NAME+0x1e48>
<== NOT EXECUTED
/*
* An inode does not move so once loaded no need to do again.
*/
if (!rtems_rfs_inode_is_loaded (handle))
4005612c: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
40056130: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
40056134: 22 80 00 0b be,a 40056160 <rtems_rfs_inode_load+0x74>
<== NOT EXECUTED
40056138: d4 06 60 1c ld [ %i1 + 0x1c ], %o2
<== NOT EXECUTED
handle->node = rtems_rfs_buffer_data (&handle->buffer);
handle->node += handle->offset;
}
handle->loads++;
4005613c: c2 06 60 24 ld [ %i1 + 0x24 ], %g1
<== NOT EXECUTED
40056140: 82 00 60 01 inc %g1
<== NOT EXECUTED
40056144: c2 26 60 24 st %g1, [ %i1 + 0x24 ]
<== NOT EXECUTED
return 0;
40056148: b0 10 20 00 clr %i0
<== NOT EXECUTED
}
4005614c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056150: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("rtems-rfs: inode-load: ino=%" PRIu32 " loads=%i loaded=%s\n",
40056154: 17 10 02 02 sethi %hi(0x40080800), %o3
<== NOT EXECUTED
40056158: 10 bf ff f2 b 40056120 <rtems_rfs_inode_load+0x34>
<== NOT EXECUTED
4005615c: 96 12 e1 d8 or %o3, 0x1d8, %o3 ! 400809d8 <rtems_rtc_shell_usage+0x550>
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs,&handle->buffer,
40056160: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40056164: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40056168: 7f ff ec 88 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
4005616c: 92 06 60 10 add %i1, 0x10, %o1
<== NOT EXECUTED
if (rc > 0)
40056170: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056174: 14 bf ff f6 bg 4005614c <rtems_rfs_inode_load+0x60>
<== NOT EXECUTED
40056178: 01 00 00 00 nop
<== NOT EXECUTED
handle->node = rtems_rfs_buffer_data (&handle->buffer);
4005617c: c2 06 60 18 ld [ %i1 + 0x18 ], %g1
<== NOT EXECUTED
handle->node += handle->offset;
40056180: c4 00 60 1c ld [ %g1 + 0x1c ], %g2
<== NOT EXECUTED
40056184: c6 06 60 20 ld [ %i1 + 0x20 ], %g3
<== NOT EXECUTED
40056188: 83 28 e0 03 sll %g3, 3, %g1
<== NOT EXECUTED
4005618c: 82 20 40 03 sub %g1, %g3, %g1
<== NOT EXECUTED
40056190: 83 28 60 03 sll %g1, 3, %g1
<== NOT EXECUTED
40056194: 82 00 80 01 add %g2, %g1, %g1
<== NOT EXECUTED
40056198: 10 bf ff e9 b 4005613c <rtems_rfs_inode_load+0x50>
<== NOT EXECUTED
4005619c: c2 26 60 0c st %g1, [ %i1 + 0xc ]
<== NOT EXECUTED
400561a0 <rtems_rfs_inode_open>:
{
400561a0: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_OPEN))
400561a4: 90 10 20 00 clr %o0
<== NOT EXECUTED
400561a8: 40 00 07 7e call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400561ac: 13 00 01 00 sethi %hi(0x40000), %o1
<== NOT EXECUTED
400561b0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400561b4: 32 80 00 2f bne,a 40056270 <rtems_rfs_inode_open+0xd0>
<== NOT EXECUTED
400561b8: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
if (ino == RTEMS_RFS_EMPTY_INO)
400561bc: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
400561c0: 02 80 00 29 be 40056264 <rtems_rfs_inode_open+0xc4>
<== NOT EXECUTED
400561c4: 82 06 7f ff add %i1, -1, %g1
<== NOT EXECUTED
if ((ino - RTEMS_RFS_ROOT_INO) > rtems_rfs_fs_inodes (fs))
400561c8: c4 06 20 14 ld [ %i0 + 0x14 ], %g2
<== NOT EXECUTED
400561cc: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
400561d0: 18 80 00 25 bgu 40056264 <rtems_rfs_inode_open+0xc4>
<== NOT EXECUTED
400561d4: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
group = gino / fs->group_inodes;
400561d8: fa 06 20 2c ld [ %i0 + 0x2c ], %i5
<== NOT EXECUTED
handle->block = rtems_rfs_group_block (&fs->groups[group], index);
400561dc: f8 06 20 20 ld [ %i0 + 0x20 ], %i4
<== NOT EXECUTED
index = (gino / fs->inodes_per_block) + RTEMS_RFS_GROUP_INODE_BLOCK;
400561e0: c8 06 20 30 ld [ %i0 + 0x30 ], %g4
<== NOT EXECUTED
gino = gino % fs->group_inodes;
400561e4: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
400561e8: 01 00 00 00 nop
<== NOT EXECUTED
400561ec: 01 00 00 00 nop
<== NOT EXECUTED
400561f0: 01 00 00 00 nop
<== NOT EXECUTED
400561f4: 84 70 40 1d udiv %g1, %i5, %g2
<== NOT EXECUTED
handle->block = rtems_rfs_group_block (&fs->groups[group], index);
400561f8: 87 28 a0 02 sll %g2, 2, %g3
<== NOT EXECUTED
400561fc: 86 00 c0 02 add %g3, %g2, %g3
<== NOT EXECUTED
gino = gino % fs->group_inodes;
40056200: 84 58 80 1d smul %g2, %i5, %g2
<== NOT EXECUTED
handle->block = rtems_rfs_group_block (&fs->groups[group], index);
40056204: 87 28 e0 04 sll %g3, 4, %g3
<== NOT EXECUTED
40056208: c6 07 00 03 ld [ %i4 + %g3 ], %g3
<== NOT EXECUTED
gino = gino % fs->group_inodes;
4005620c: 82 20 40 02 sub %g1, %g2, %g1
<== NOT EXECUTED
handle->ino = ino;
40056210: f2 26 a0 08 st %i1, [ %i2 + 8 ]
<== NOT EXECUTED
handle->offset = gino % fs->inodes_per_block;
40056214: 81 80 20 00 wr %g0, %y
<== NOT EXECUTED
40056218: 01 00 00 00 nop
<== NOT EXECUTED
4005621c: 01 00 00 00 nop
<== NOT EXECUTED
40056220: 01 00 00 00 nop
<== NOT EXECUTED
40056224: 84 70 40 04 udiv %g1, %g4, %g2
<== NOT EXECUTED
handle->node = NULL;
40056228: c0 26 a0 0c clr [ %i2 + 0xc ]
<== NOT EXECUTED
handle->offset = gino % fs->inodes_per_block;
4005622c: 88 58 80 04 smul %g2, %g4, %g4
<== NOT EXECUTED
handle->loads = 0;
40056230: c0 26 a0 24 clr [ %i2 + 0x24 ]
<== NOT EXECUTED
handle->offset = gino % fs->inodes_per_block;
40056234: 82 20 40 04 sub %g1, %g4, %g1
<== NOT EXECUTED
index = (gino / fs->inodes_per_block) + RTEMS_RFS_GROUP_INODE_BLOCK;
40056238: 84 00 a0 02 add %g2, 2, %g2
<== NOT EXECUTED
handle->offset = gino % fs->inodes_per_block;
4005623c: c2 26 a0 20 st %g1, [ %i2 + 0x20 ]
<== NOT EXECUTED
handle->block = rtems_rfs_group_block (&fs->groups[group], index);
40056240: 84 00 c0 02 add %g3, %g2, %g2
<== NOT EXECUTED
handle->dirty = false;
40056244: c0 2e a0 10 clrb [ %i2 + 0x10 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_open (fs, &handle->buffer);
40056248: 82 10 20 00 clr %g1
<== NOT EXECUTED
handle->block = rtems_rfs_group_block (&fs->groups[group], index);
4005624c: c4 26 a0 1c st %g2, [ %i2 + 0x1c ]
<== NOT EXECUTED
handle->bnum = 0;
40056250: c0 26 a0 14 clr [ %i2 + 0x14 ]
<== NOT EXECUTED
if ((rc == 0) && load)
40056254: 02 80 00 05 be 40056268 <rtems_rfs_inode_open+0xc8>
<== NOT EXECUTED
40056258: c0 26 a0 18 clr [ %i2 + 0x18 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_load (fs, handle);
4005625c: 7f ff ff a4 call 400560ec <rtems_rfs_inode_load>
<== NOT EXECUTED
40056260: 93 e8 00 1a restore %g0, %i2, %o1
<== NOT EXECUTED
return EINVAL;
40056264: 82 10 20 16 mov 0x16, %g1
<== NOT EXECUTED
}
40056268: 81 c7 e0 08 ret
<== NOT EXECUTED
4005626c: 91 e8 00 01 restore %g0, %g1, %o0
<== NOT EXECUTED
printf ("rtems-rfs: inode-open: ino: %" PRIu32 "\n", ino);
40056270: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
40056274: 7f ff 96 b5 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056278: 90 12 23 a8 or %o0, 0x3a8, %o0 ! 40087fa8 <MSDOS_DOT_NAME+0x1e80>
<== NOT EXECUTED
if (ino == RTEMS_RFS_EMPTY_INO)
4005627c: 10 bf ff d1 b 400561c0 <rtems_rfs_inode_open+0x20>
<== NOT EXECUTED
40056280: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
4005653c <rtems_rfs_inode_time_stamp_now>:
int
rtems_rfs_inode_time_stamp_now (rtems_rfs_inode_handle* handle,
bool atime,
bool mtime)
{
4005653c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
time_t now;
if (!rtems_rfs_inode_is_loaded (handle))
40056540: c2 06 20 0c ld [ %i0 + 0xc ], %g1
<== NOT EXECUTED
{
40056544: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
if (!rtems_rfs_inode_is_loaded (handle))
40056548: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4005654c: 02 80 00 23 be 400565d8 <rtems_rfs_inode_time_stamp_now+0x9c>
<== NOT EXECUTED
40056550: b0 10 20 06 mov 6, %i0
<== NOT EXECUTED
return ENXIO;
now = time (NULL);
40056554: 40 00 55 40 call 4006ba54 <time>
<== NOT EXECUTED
40056558: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (atime)
4005655c: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
40056560: 02 80 00 0f be 4005659c <rtems_rfs_inode_time_stamp_now+0x60>
<== NOT EXECUTED
40056564: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->atime, atime);
40056568: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
4005656c: 85 32 60 18 srl %o1, 0x18, %g2
<== NOT EXECUTED
40056570: c4 28 60 10 stb %g2, [ %g1 + 0x10 ]
<== NOT EXECUTED
40056574: 83 32 60 10 srl %o1, 0x10, %g1
<== NOT EXECUTED
40056578: c4 07 60 0c ld [ %i5 + 0xc ], %g2
<== NOT EXECUTED
4005657c: c2 28 a0 11 stb %g1, [ %g2 + 0x11 ]
<== NOT EXECUTED
40056580: 83 32 60 08 srl %o1, 8, %g1
<== NOT EXECUTED
40056584: c4 07 60 0c ld [ %i5 + 0xc ], %g2
<== NOT EXECUTED
40056588: c2 28 a0 12 stb %g1, [ %g2 + 0x12 ]
<== NOT EXECUTED
4005658c: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
40056590: d2 28 60 13 stb %o1, [ %g1 + 0x13 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40056594: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40056598: c2 2f 60 10 stb %g1, [ %i5 + 0x10 ]
<== NOT EXECUTED
rtems_rfs_inode_set_atime (handle, now);
if (mtime)
4005659c: 02 80 00 0f be 400565d8 <rtems_rfs_inode_time_stamp_now+0x9c>
<== NOT EXECUTED
400565a0: b0 10 20 00 clr %i0
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->mtime, mtime);
400565a4: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
400565a8: 85 32 60 18 srl %o1, 0x18, %g2
<== NOT EXECUTED
400565ac: c4 28 60 14 stb %g2, [ %g1 + 0x14 ]
<== NOT EXECUTED
400565b0: 85 32 60 10 srl %o1, 0x10, %g2
<== NOT EXECUTED
400565b4: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
400565b8: c4 28 60 15 stb %g2, [ %g1 + 0x15 ]
<== NOT EXECUTED
400565bc: 85 32 60 08 srl %o1, 8, %g2
<== NOT EXECUTED
400565c0: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
400565c4: c4 28 60 16 stb %g2, [ %g1 + 0x16 ]
<== NOT EXECUTED
400565c8: c2 07 60 0c ld [ %i5 + 0xc ], %g1
<== NOT EXECUTED
400565cc: d2 28 60 17 stb %o1, [ %g1 + 0x17 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
400565d0: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
400565d4: c2 2f 60 10 stb %g1, [ %i5 + 0x10 ]
<== NOT EXECUTED
rtems_rfs_inode_set_mtime (handle, now);
return 0;
}
400565d8: 81 c7 e0 08 ret
<== NOT EXECUTED
400565dc: 81 e8 00 00 restore
<== NOT EXECUTED
40056284 <rtems_rfs_inode_unload>:
int
rtems_rfs_inode_unload (rtems_rfs_file_system* fs,
rtems_rfs_inode_handle* handle,
bool update_ctime)
{
40056284: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
int rc = 0;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_INODE_UNLOAD))
40056288: 90 10 20 00 clr %o0
<== NOT EXECUTED
4005628c: 40 00 07 45 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056290: 13 00 08 00 sethi %hi(0x200000), %o1
<== NOT EXECUTED
40056294: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056298: 02 80 00 0c be 400562c8 <rtems_rfs_inode_unload+0x44>
<== NOT EXECUTED
4005629c: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
printf ("rtems-rfs: inode-unload: ino=%" PRIu32 " loads=%i loaded=%s\n",
400562a0: d2 06 60 08 ld [ %i1 + 8 ], %o1
<== NOT EXECUTED
400562a4: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400562a8: 02 80 00 22 be 40056330 <rtems_rfs_inode_unload+0xac>
<== NOT EXECUTED
400562ac: d4 06 60 24 ld [ %i1 + 0x24 ], %o2
<== NOT EXECUTED
400562b0: 17 10 02 02 sethi %hi(0x40080800), %o3
<== NOT EXECUTED
400562b4: 96 12 e1 e0 or %o3, 0x1e0, %o3 ! 400809e0 <rtems_rtc_shell_usage+0x558>
<== NOT EXECUTED
400562b8: 11 10 02 1f sethi %hi(0x40087c00), %o0
<== NOT EXECUTED
400562bc: 7f ff 96 a3 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400562c0: 90 12 23 d0 or %o0, 0x3d0, %o0 ! 40087fd0 <MSDOS_DOT_NAME+0x1ea8>
<== NOT EXECUTED
handle->ino, handle->loads,
rtems_rfs_inode_is_loaded (handle) ? "yes" : "no");
if (rtems_rfs_inode_is_loaded (handle))
400562c4: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
400562c8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400562cc: 22 80 00 17 be,a 40056328 <rtems_rfs_inode_unload+0xa4>
<== NOT EXECUTED
400562d0: 90 10 20 00 clr %o0
<== NOT EXECUTED
{
if (handle->loads == 0)
400562d4: c2 06 60 24 ld [ %i1 + 0x24 ], %g1
<== NOT EXECUTED
400562d8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400562dc: 02 80 00 10 be 4005631c <rtems_rfs_inode_unload+0x98>
<== NOT EXECUTED
400562e0: 90 10 20 05 mov 5, %o0
<== NOT EXECUTED
return EIO;
handle->loads--;
400562e4: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
if (handle->loads == 0)
400562e8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400562ec: 12 80 00 0e bne 40056324 <rtems_rfs_inode_unload+0xa0>
<== NOT EXECUTED
400562f0: c2 26 60 24 st %g1, [ %i1 + 0x24 ]
<== NOT EXECUTED
{
/*
* If the buffer is dirty it will be release. Also set the ctime.
*/
if (rtems_rfs_buffer_dirty (&handle->buffer) && update_ctime)
400562f4: c2 0e 60 10 ldub [ %i1 + 0x10 ], %g1
<== NOT EXECUTED
400562f8: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400562fc: 02 80 00 04 be 4005630c <rtems_rfs_inode_unload+0x88>
<== NOT EXECUTED
40056300: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40056304: 12 80 00 0e bne 4005633c <rtems_rfs_inode_unload+0xb8>
<== NOT EXECUTED
40056308: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_inode_set_ctime (handle, time (NULL));
rc = rtems_rfs_buffer_handle_release (fs, &handle->buffer);
4005630c: 92 06 60 10 add %i1, 0x10, %o1
<== NOT EXECUTED
40056310: 7f ff ec e5 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40056314: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->node = NULL;
40056318: c0 26 60 0c clr [ %i1 + 0xc ]
<== NOT EXECUTED
}
}
return rc;
}
4005631c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056320: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
int rc = 0;
40056324: 90 10 20 00 clr %o0
<== NOT EXECUTED
}
40056328: 81 c7 e0 08 ret
<== NOT EXECUTED
4005632c: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
printf ("rtems-rfs: inode-unload: ino=%" PRIu32 " loads=%i loaded=%s\n",
40056330: 17 10 02 02 sethi %hi(0x40080800), %o3
<== NOT EXECUTED
40056334: 10 bf ff e1 b 400562b8 <rtems_rfs_inode_unload+0x34>
<== NOT EXECUTED
40056338: 96 12 e1 d8 or %o3, 0x1d8, %o3 ! 400809d8 <rtems_rtc_shell_usage+0x550>
<== NOT EXECUTED
rtems_rfs_inode_set_ctime (handle, time (NULL));
4005633c: 40 00 55 c6 call 4006ba54 <time>
<== NOT EXECUTED
40056340: 90 10 20 00 clr %o0
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->ctime, ctime);
40056344: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
40056348: 85 32 60 18 srl %o1, 0x18, %g2
<== NOT EXECUTED
4005634c: c4 28 60 18 stb %g2, [ %g1 + 0x18 ]
<== NOT EXECUTED
40056350: 85 32 60 10 srl %o1, 0x10, %g2
<== NOT EXECUTED
40056354: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
40056358: c4 28 60 19 stb %g2, [ %g1 + 0x19 ]
<== NOT EXECUTED
4005635c: 85 32 60 08 srl %o1, 8, %g2
<== NOT EXECUTED
40056360: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
40056364: c4 28 60 1a stb %g2, [ %g1 + 0x1a ]
<== NOT EXECUTED
40056368: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
4005636c: d2 28 60 1b stb %o1, [ %g1 + 0x1b ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40056370: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40056374: 10 bf ff e6 b 4005630c <rtems_rfs_inode_unload+0x88>
<== NOT EXECUTED
40056378: c2 2e 60 10 stb %g1, [ %i1 + 0x10 ]
<== NOT EXECUTED
40056b34 <rtems_rfs_link>:
const char* name,
int length,
rtems_rfs_ino parent,
rtems_rfs_ino target,
bool link_dir)
{
40056b34: 9d e3 bf 50 save %sp, -176, %sp
<== 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))
40056b38: 90 10 20 00 clr %o0
<== NOT EXECUTED
40056b3c: 13 00 40 00 sethi %hi(0x1000000), %o1
<== NOT EXECUTED
40056b40: 40 00 05 18 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056b44: a2 10 00 18 mov %i0, %l1
<== NOT EXECUTED
40056b48: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056b4c: 12 80 00 50 bne 40056c8c <rtems_rfs_link+0x158>
<== NOT EXECUTED
40056b50: 96 10 20 01 mov 1, %o3
<== 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);
40056b54: 94 07 bf d8 add %fp, -40, %o2
<== NOT EXECUTED
40056b58: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
40056b5c: 7f ff fd 91 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40056b60: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
if (rc)
40056b64: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056b68: 12 80 00 3c bne 40056c58 <rtems_rfs_link+0x124>
<== NOT EXECUTED
40056b6c: 80 a7 60 00 cmp %i5, 0
<== 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)))
40056b70: 12 80 00 0a bne 40056b98 <rtems_rfs_link+0x64>
<== NOT EXECUTED
40056b74: c2 07 bf e4 ld [ %fp + -28 ], %g1
<== NOT EXECUTED
40056b78: 05 00 00 3c sethi %hi(0xf000), %g2
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->mode);
40056b7c: c2 08 60 02 ldub [ %g1 + 2 ], %g1
<== NOT EXECUTED
40056b80: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40056b84: 82 08 40 02 and %g1, %g2, %g1
<== NOT EXECUTED
40056b88: 05 00 00 10 sethi %hi(0x4000), %g2
<== NOT EXECUTED
40056b8c: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056b90: 02 80 00 5a be 40056cf8 <rtems_rfs_link+0x1c4>
<== NOT EXECUTED
40056b94: b0 10 20 86 mov 0x86, %i0
<== NOT EXECUTED
{
rtems_rfs_inode_close (fs, &target_inode);
return ENOTSUP;
}
rc = rtems_rfs_inode_open (fs, parent, &parent_inode, true);
40056b98: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40056b9c: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40056ba0: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
40056ba4: 7f ff fd 7f call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40056ba8: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
if (rc)
40056bac: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056bb0: 12 80 00 26 bne 40056c48 <rtems_rfs_link+0x114>
<== NOT EXECUTED
40056bb4: 98 10 00 1c mov %i4, %o4
<== NOT EXECUTED
{
rtems_rfs_inode_close (fs, &target_inode);
return rc;
}
rc = rtems_rfs_dir_add_entry (fs, &parent_inode, name, length, target);
40056bb8: 96 10 00 1a mov %i2, %o3
<== NOT EXECUTED
40056bbc: 94 10 00 19 mov %i1, %o2
<== NOT EXECUTED
40056bc0: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40056bc4: 7f ff ed 3d call 400520b8 <rtems_rfs_dir_add_entry>
<== NOT EXECUTED
40056bc8: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
if (rc > 0)
40056bcc: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40056bd0: 14 80 00 43 bg 40056cdc <rtems_rfs_link+0x1a8>
<== NOT EXECUTED
40056bd4: c4 07 bf e4 ld [ %fp + -28 ], %g2
<== NOT EXECUTED
links = rtems_rfs_read_u16 (&handle->node->links);
40056bd8: c6 08 a0 01 ldub [ %g2 + 1 ], %g3
<== NOT EXECUTED
40056bdc: c2 08 80 00 ldub [ %g2 ], %g1
<== NOT EXECUTED
40056be0: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40056be4: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
if (links == 0xffff)
40056be8: 07 00 00 3f sethi %hi(0xfc00), %g3
<== NOT EXECUTED
40056bec: 86 10 e3 ff or %g3, 0x3ff, %g3 ! ffff <_Configuration_Interrupt_stack_size+0xefff>
<== NOT EXECUTED
40056bf0: 80 a0 40 03 cmp %g1, %g3
<== NOT EXECUTED
40056bf4: 22 80 00 3f be,a 40056cf0 <rtems_rfs_link+0x1bc>
<== NOT EXECUTED
40056bf8: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40056bfc: 82 00 60 01 inc %g1
<== NOT EXECUTED
40056c00: 87 28 60 10 sll %g1, 0x10, %g3
<== NOT EXECUTED
40056c04: 87 30 e0 18 srl %g3, 0x18, %g3
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->links, links);
40056c08: c6 28 80 00 stb %g3, [ %g2 ]
<== NOT EXECUTED
}
links = rtems_rfs_inode_get_links (&target_inode) + 1;
rtems_rfs_inode_set_links (&target_inode, links);
rc = rtems_rfs_inode_time_stamp_now (&parent_inode, true, true);
40056c0c: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40056c10: c4 07 bf e4 ld [ %fp + -28 ], %g2
<== NOT EXECUTED
40056c14: c2 28 a0 01 stb %g1, [ %g2 + 1 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40056c18: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40056c1c: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40056c20: c2 2f bf e8 stb %g1, [ %fp + -24 ]
<== NOT EXECUTED
40056c24: 7f ff fe 46 call 4005653c <rtems_rfs_inode_time_stamp_now>
<== NOT EXECUTED
40056c28: 90 07 bf b0 add %fp, -80, %o0
<== NOT EXECUTED
if (rc > 0)
{
rtems_rfs_inode_close (fs, &parent_inode);
40056c2c: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
rc = rtems_rfs_inode_time_stamp_now (&parent_inode, true, true);
40056c30: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
if (rc > 0)
40056c34: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
40056c38: 04 80 00 0a ble 40056c60 <rtems_rfs_link+0x12c>
<== NOT EXECUTED
40056c3c: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &parent_inode);
40056c40: 7f ff fd cf call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056c44: 01 00 00 00 nop
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
40056c48: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056c4c: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
40056c50: 7f ff fd cb call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056c54: 01 00 00 00 nop
<== NOT EXECUTED
return rc;
40056c58: 81 c7 e0 08 ret
<== NOT EXECUTED
40056c5c: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
return rc;
}
rc = rtems_rfs_inode_close (fs, &parent_inode);
40056c60: 7f ff fd c7 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056c64: 01 00 00 00 nop
<== NOT EXECUTED
if (rc > 0)
{
rtems_rfs_inode_close (fs, &target_inode);
40056c68: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &parent_inode);
40056c6c: b0 10 00 08 mov %o0, %i0
<== NOT EXECUTED
if (rc > 0)
40056c70: 80 a6 20 00 cmp %i0, 0
<== NOT EXECUTED
40056c74: 14 bf ff f7 bg 40056c50 <rtems_rfs_link+0x11c>
<== NOT EXECUTED
40056c78: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
return rc;
}
rc = rtems_rfs_inode_close (fs, &target_inode);
40056c7c: 7f ff fd c0 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056c80: 01 00 00 00 nop
<== NOT EXECUTED
return rc;
}
40056c84: 81 c7 e0 08 ret
<== NOT EXECUTED
40056c88: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
printf ("rtems-rfs: link: parent(%" PRIu32 ") -> ", parent);
40056c8c: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
40056c90: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056c94: 7f ff 94 2d call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056c98: 90 12 20 f8 or %o0, 0xf8, %o0 ! 400880f8 <MSDOS_DOT_NAME+0x1fd0>
<== NOT EXECUTED
for (c = 0; c < length; c++)
40056c9c: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40056ca0: 04 80 00 09 ble 40056cc4 <rtems_rfs_link+0x190>
<== NOT EXECUTED
40056ca4: b0 06 80 19 add %i2, %i1, %i0
<== NOT EXECUTED
40056ca8: a0 10 00 19 mov %i1, %l0
<== NOT EXECUTED
printf ("%c", name[c]);
40056cac: 7f ff 94 3c call 4003bd9c <__wrap_putchar>
<== NOT EXECUTED
40056cb0: d0 4c 00 00 ldsb [ %l0 ], %o0
<== NOT EXECUTED
40056cb4: a0 04 20 01 inc %l0
<== NOT EXECUTED
for (c = 0; c < length; c++)
40056cb8: 80 a6 00 10 cmp %i0, %l0
<== NOT EXECUTED
40056cbc: 12 bf ff fc bne 40056cac <rtems_rfs_link+0x178>
<== NOT EXECUTED
40056cc0: 01 00 00 00 nop
<== NOT EXECUTED
printf ("(%" PRIu32 ")\n", target);
40056cc4: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
40056cc8: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056ccc: 7f ff 94 1f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056cd0: 90 12 21 20 or %o0, 0x120, %o0 ! 40088120 <MSDOS_DOT_NAME+0x1ff8>
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, target, &target_inode, true);
40056cd4: 10 bf ff a0 b 40056b54 <rtems_rfs_link+0x20>
<== NOT EXECUTED
40056cd8: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &parent_inode);
40056cdc: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40056ce0: 7f ff fd a7 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056ce4: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
40056ce8: 10 bf ff d9 b 40056c4c <rtems_rfs_link+0x118>
<== NOT EXECUTED
40056cec: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
if (links == 0xffff)
40056cf0: 10 bf ff c6 b 40056c08 <rtems_rfs_link+0xd4>
<== NOT EXECUTED
40056cf4: 86 10 20 00 clr %g3
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
40056cf8: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056cfc: 7f ff fd a0 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056d00: 90 10 00 11 mov %l1, %o0
<== NOT EXECUTED
return ENOTSUP;
40056d04: 81 c7 e0 08 ret
<== NOT EXECUTED
40056d08: 81 e8 00 00 restore
<== NOT EXECUTED
400575d0 <rtems_rfs_mutex_create>:
*_mutex = _init;
400575d0: c0 22 00 00 clr [ %o0 ]
<== NOT EXECUTED
#include <rtems/rfs/rtems-rfs-mutex.h>
int
rtems_rfs_mutex_create (rtems_rfs_mutex* mutex)
{
400575d4: 82 10 00 08 mov %o0, %g1
<== NOT EXECUTED
400575d8: c0 22 20 04 clr [ %o0 + 4 ]
<== NOT EXECUTED
400575dc: 05 10 02 20 sethi %hi(0x40088000), %g2
<== NOT EXECUTED
#if __rtems__
rtems_recursive_mutex_init(mutex, "RFS");
#endif
return 0;
}
400575e0: 90 10 20 00 clr %o0
<== NOT EXECUTED
400575e4: 84 10 a3 50 or %g2, 0x350, %g2
<== NOT EXECUTED
400575e8: c0 20 60 08 clr [ %g1 + 8 ]
<== NOT EXECUTED
400575ec: c0 20 60 0c clr [ %g1 + 0xc ]
<== NOT EXECUTED
400575f0: c4 20 60 10 st %g2, [ %g1 + 0x10 ]
<== NOT EXECUTED
400575f4: 81 c3 e0 08 retl
<== NOT EXECUTED
400575f8: c0 20 60 14 clr [ %g1 + 0x14 ]
<== NOT EXECUTED
400575fc <rtems_rfs_mutex_destroy>:
{
#if __rtems__
rtems_recursive_mutex_destroy(mutex);
#endif
return 0;
}
400575fc: 81 c3 e0 08 retl
<== NOT EXECUTED
40057600: 90 10 20 00 clr %o0
<== NOT EXECUTED
40081e80 <rtems_rfs_ops>:
40081e80: 40 03 a0 10 40 03 9f f8 40 03 9f 7c 40 03 9c fc @...@...@..|@...
40081e90: 40 00 7e e8 40 03 9e 0c 40 03 9b 8c 40 03 98 04 @.~.@...@...@...
40081ea0: 40 03 97 58 40 03 ea 88 40 03 ea c0 40 03 eb a0 @..X@...@...@...
40081eb0: 40 03 ec 10 40 03 a0 24 40 03 96 a4 40 03 9d 8c @...@..$@...@...
40081ec0: 40 03 9d 48 40 03 9c 6c 40 03 9b d4 @..H@..l@...
40088354 <rtems_rfs_rtems_device_handlers>:
40088354: 40 05 76 5c 40 05 76 48 40 05 76 34 40 05 76 20 @.v\@.vH@.v4@.v
40088364: 40 05 76 0c 40 00 7f 54 40 03 98 94 40 05 76 04 @.v.@..T@...@.v.
40088374: 40 03 ea c8 40 03 ea c8 40 00 7f 08 40 00 80 94 @...@...@...@...
40088384: 40 00 7f 34 40 00 80 9c 40 00 81 34 40 00 80 70 @..4@...@..4@..p
40088394 <rtems_rfs_rtems_dir_handlers>:
40088394: 40 05 78 9c 40 05 77 88 40 05 77 90 40 03 ec 2c @.x.@.w.@.w.@..,
400883a4: 40 03 eb 08 40 03 eb 40 40 03 98 94 40 03 ea ec @...@..@@...@...
400883b4: 40 03 ea c8 40 03 a2 7c 40 00 7f 08 40 00 80 94 @...@..|@...@...
400883c4: 40 00 7f 34 40 00 80 9c 40 00 81 34 40 00 80 70 @..4@...@..4@..p
4003a27c <rtems_rfs_rtems_fdatasync>:
{
4003a27c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
rc = rtems_rfs_buffer_sync (rtems_rfs_rtems_pathloc_dev (&iop->pathinfo));
4003a280: c2 06 20 20 ld [ %i0 + 0x20 ], %g1
<== NOT EXECUTED
4003a284: 40 00 5d 79 call 40051868 <rtems_rfs_buffer_sync>
<== NOT EXECUTED
4003a288: d0 00 60 08 ld [ %g1 + 8 ], %o0
<== NOT EXECUTED
if (rc)
4003a28c: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
4003a290: 12 80 00 04 bne 4003a2a0 <rtems_rfs_rtems_fdatasync+0x24>
<== NOT EXECUTED
4003a294: 01 00 00 00 nop
<== NOT EXECUTED
}
4003a298: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a29c: 81 e8 00 00 restore
<== NOT EXECUTED
return rtems_rfs_rtems_error ("fdatasync: sync", rc);
4003a2a0: 40 00 89 9d call 4005c914 <__errno>
<== NOT EXECUTED
4003a2a4: 01 00 00 00 nop
<== NOT EXECUTED
4003a2a8: f0 22 00 00 st %i0, [ %o0 ]
<== NOT EXECUTED
}
4003a2ac: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a2b0: 91 e8 3f ff restore %g0, -1, %o0
<== NOT EXECUTED
400883d4 <rtems_rfs_rtems_file_handlers>:
400883d4: 40 05 7f 20 40 05 7e c0 40 05 7d 20 40 05 7a dc @.. @.~.@.} @.z.
400883e4: 40 03 eb 08 40 05 79 ec 40 03 98 94 40 05 79 80 @...@.y.@...@.y.
400883f4: 40 03 a2 7c 40 03 a2 7c 40 00 7f 08 40 00 80 94 @..|@..|@...@...
40088404: 40 00 7f 34 40 00 80 9c 40 00 81 34 40 00 80 70 @..4@...@..4@..p
40088414: 00 00 00 00 25 30 38 78 2d 25 30 34 78 2d 25 30 ....%08x-%04x-%0
40088424: 34 78 2d 25 30 32 78 25 30 32 78 2d 25 30 32 78 4x-%02x%02x-%02x
40088434: 25 30 32 78 25 30 32 78 25 30 32 78 25 30 32 78 %02x%02x%02x%02x
40088444: 25 30 32 78 00 00 00 00 00 00 00 00 52 45 41 44 %02x........READ
40088454: 59 00 00 00 4d 54 58 00 00 00 00 00 53 45 4d 00 Y...MTX.....SEM.
40088464: 00 00 00 00 45 56 00 00 00 00 00 00 53 59 53 45 ....EV......SYSE
40088474: 56 00 00 00 4d 53 47 00 00 00 00 00 43 56 00 00 V...MSG.....CV..
40088484: 00 00 00 00 46 54 58 00 00 00 00 00 57 4b 00 00 ....FTX.....WK..
40088494: 00 00 00 00 54 49 4d 45 00 00 00 00 50 45 52 00 ....TIME....PER.
400884a4: 00 00 00 00 53 49 47 00 00 00 00 00 42 41 52 00 ....SIG.....BAR.
400884b4: 00 00 00 00 52 57 00 00 00 00 00 00 4a 41 54 58 ....RW......JATX
400884c4: 00 00 00 00 4a 4f 49 4e 00 00 00 00 53 55 53 50 ....JOIN....SUSP
400884d4: 00 00 00 00 53 45 47 00 00 00 00 00 4c 49 46 45 ....SEG.....LIFE
400884e4: 00 00 00 00 44 42 47 00 00 00 00 00 49 53 00 00 ....DBG.....IS..
400884f4: 00 00 00 00 52 50 43 00 00 00 00 00 5a 4f 4d 42 ....RPC.....ZOMB
40088504: 49 00 00 00 44 4f 52 4d 00 00 00 00 I...DORM....
40039894 <rtems_rfs_rtems_fstat>:
int
rtems_rfs_rtems_fstat (const rtems_filesystem_location_info_t* pathloc,
struct stat* buf)
{
40039894: 9d e3 bf 78 save %sp, -136, %sp
<== NOT EXECUTED
rtems_rfs_file_system* fs = rtems_rfs_rtems_pathloc_dev (pathloc);
40039898: c2 06 20 14 ld [ %i0 + 0x14 ], %g1
<== NOT EXECUTED
4003989c: fa 00 60 08 ld [ %g1 + 8 ], %i5
<== NOT EXECUTED
int rc;
if (rtems_rfs_rtems_trace (RTEMS_RFS_RTEMS_DEBUG_STAT))
printf ("rtems-rfs-rtems: stat: in: ino:%" PRId32 "\n", ino);
rc = rtems_rfs_inode_open (fs, ino, &inode, true);
400398a0: d2 06 20 08 ld [ %i0 + 8 ], %o1
<== NOT EXECUTED
400398a4: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
400398a8: 94 07 bf d8 add %fp, -40, %o2
<== NOT EXECUTED
400398ac: 40 00 72 3d call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
400398b0: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
if (rc)
400398b4: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
400398b8: 12 80 00 b0 bne 40039b78 <rtems_rfs_rtems_fstat+0x2e4>
<== NOT EXECUTED
400398bc: c2 07 bf e4 ld [ %fp + -28 ], %g1
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->mode);
400398c0: c4 08 60 03 ldub [ %g1 + 3 ], %g2
<== NOT EXECUTED
400398c4: d0 08 60 02 ldub [ %g1 + 2 ], %o0
<== NOT EXECUTED
400398c8: 91 2a 20 08 sll %o0, 8, %o0
<== NOT EXECUTED
return rtems_rfs_rtems_error ("stat: opening inode", rc);
}
mode = rtems_rfs_inode_get_mode (&inode);
if (RTEMS_RFS_S_ISCHR (mode) || RTEMS_RFS_S_ISBLK (mode))
400398cc: 07 00 00 08 sethi %hi(0x2000), %g3
<== NOT EXECUTED
400398d0: 90 12 00 02 or %o0, %g2, %o0
<== NOT EXECUTED
400398d4: 05 3f ff ec sethi %hi(0xffffb000), %g2
<== NOT EXECUTED
400398d8: 84 0a 00 02 and %o0, %g2, %g2
<== NOT EXECUTED
400398dc: 80 a0 80 03 cmp %g2, %g3
<== NOT EXECUTED
400398e0: 22 80 00 46 be,a 400399f8 <rtems_rfs_rtems_fstat+0x164>
<== NOT EXECUTED
400398e4: da 08 60 20 ldub [ %g1 + 0x20 ], %o5
<== NOT EXECUTED
buf->st_rdev =
rtems_filesystem_make_dev_t (rtems_rfs_inode_get_block (&inode, 0),
rtems_rfs_inode_get_block (&inode, 1));
}
buf->st_dev = (dev_t) (uintptr_t)rtems_rfs_fs_device (fs);
400398e8: c2 07 60 10 ld [ %i5 + 0x10 ], %g1
<== NOT EXECUTED
400398ec: c2 26 60 04 st %g1, [ %i1 + 4 ]
<== NOT EXECUTED
buf->st_ino = rtems_rfs_inode_ino (&inode);
400398f0: c2 07 bf e0 ld [ %fp + -32 ], %g1
<== NOT EXECUTED
400398f4: c2 26 60 08 st %g1, [ %i1 + 8 ]
<== NOT EXECUTED
buf->st_mode = rtems_rfs_rtems_mode (mode);
400398f8: 40 00 03 2f call 4003a5b4 <rtems_rfs_rtems_mode>
<== NOT EXECUTED
400398fc: c0 26 40 00 clr [ %i1 ]
<== NOT EXECUTED
40039900: d0 26 60 0c st %o0, [ %i1 + 0xc ]
<== NOT EXECUTED
40039904: c4 07 bf e4 ld [ %fp + -28 ], %g2
<== NOT EXECUTED
links = rtems_rfs_read_u16 (&handle->node->links);
40039908: c6 08 a0 01 ldub [ %g2 + 1 ], %g3
<== NOT EXECUTED
4003990c: c2 08 80 00 ldub [ %g2 ], %g1
<== NOT EXECUTED
40039910: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40039914: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
if (links == 0xffff)
40039918: 07 00 00 3f sethi %hi(0xfc00), %g3
<== NOT EXECUTED
4003991c: 86 10 e3 ff or %g3, 0x3ff, %g3 ! ffff <_Configuration_Interrupt_stack_size+0xefff>
<== NOT EXECUTED
40039920: 80 a0 40 03 cmp %g1, %g3
<== NOT EXECUTED
40039924: 12 80 00 03 bne 40039930 <rtems_rfs_rtems_fstat+0x9c>
<== NOT EXECUTED
40039928: 88 10 00 01 mov %g1, %g4
<== NOT EXECUTED
links = 0;
4003992c: 88 10 20 00 clr %g4
<== NOT EXECUTED
buf->st_nlink = rtems_rfs_inode_get_links (&inode);
40039930: c8 36 60 10 sth %g4, [ %i1 + 0x10 ]
<== NOT EXECUTED
/*
* Need to check is the ino is an open file. If so we take the values from
* the open file rather than the inode.
*/
shared = rtems_rfs_file_get_shared (fs, rtems_rfs_inode_ino (&inode));
40039934: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->owner) & 0xffff;
40039938: c6 08 a0 06 ldub [ %g2 + 6 ], %g3
<== NOT EXECUTED
4003993c: c2 08 a0 07 ldub [ %g2 + 7 ], %g1
<== NOT EXECUTED
40039940: 87 28 e0 08 sll %g3, 8, %g3
<== NOT EXECUTED
40039944: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
buf->st_uid = rtems_rfs_inode_get_uid (&inode);
40039948: c2 36 60 12 sth %g1, [ %i1 + 0x12 ]
<== NOT EXECUTED
return (rtems_rfs_read_u32 (&handle->node->owner) >> 16) & 0xffff;
4003994c: c2 08 a0 05 ldub [ %g2 + 5 ], %g1
<== NOT EXECUTED
40039950: c6 08 a0 04 ldub [ %g2 + 4 ], %g3
<== NOT EXECUTED
40039954: 85 28 e0 18 sll %g3, 0x18, %g2
<== NOT EXECUTED
40039958: 83 28 60 10 sll %g1, 0x10, %g1
<== NOT EXECUTED
4003995c: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
40039960: 83 30 60 10 srl %g1, 0x10, %g1
<== NOT EXECUTED
40039964: c2 36 60 14 sth %g1, [ %i1 + 0x14 ]
<== NOT EXECUTED
shared = rtems_rfs_file_get_shared (fs, rtems_rfs_inode_ino (&inode));
40039968: 40 00 69 7d call 40053f5c <rtems_rfs_file_get_shared>
<== NOT EXECUTED
4003996c: d2 07 bf e0 ld [ %fp + -32 ], %o1
<== NOT EXECUTED
if (shared)
40039970: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40039974: 02 80 00 3b be 40039a60 <rtems_rfs_rtems_fstat+0x1cc>
<== NOT EXECUTED
40039978: c2 07 bf e4 ld [ %fp + -28 ], %g1
<== NOT EXECUTED
{
buf->st_atime = rtems_rfs_file_shared_get_atime (shared);
buf->st_mtime = rtems_rfs_file_shared_get_mtime (shared);
buf->st_ctime = rtems_rfs_file_shared_get_ctime (shared);
4003997c: c4 02 20 94 ld [ %o0 + 0x94 ], %g2
<== NOT EXECUTED
buf->st_blocks = rtems_rfs_file_shared_get_block_count (shared);
40039980: c2 02 20 84 ld [ %o0 + 0x84 ], %g1
<== NOT EXECUTED
buf->st_atime = rtems_rfs_file_shared_get_atime (shared);
40039984: c8 02 20 8c ld [ %o0 + 0x8c ], %g4
<== NOT EXECUTED
buf->st_mtime = rtems_rfs_file_shared_get_mtime (shared);
40039988: c6 02 20 90 ld [ %o0 + 0x90 ], %g3
<== NOT EXECUTED
4003998c: c6 26 60 3c st %g3, [ %i1 + 0x3c ]
<== NOT EXECUTED
buf->st_ctime = rtems_rfs_file_shared_get_ctime (shared);
40039990: c4 26 60 4c st %g2, [ %i1 + 0x4c ]
<== NOT EXECUTED
if (S_ISLNK (buf->st_mode))
40039994: 05 00 00 3c sethi %hi(0xf000), %g2
<== NOT EXECUTED
buf->st_blocks = rtems_rfs_file_shared_get_block_count (shared);
40039998: c2 26 60 5c st %g1, [ %i1 + 0x5c ]
<== NOT EXECUTED
buf->st_atime = rtems_rfs_file_shared_get_atime (shared);
4003999c: c0 26 60 28 clr [ %i1 + 0x28 ]
<== NOT EXECUTED
400399a0: c8 26 60 2c st %g4, [ %i1 + 0x2c ]
<== NOT EXECUTED
buf->st_mtime = rtems_rfs_file_shared_get_mtime (shared);
400399a4: c0 26 60 38 clr [ %i1 + 0x38 ]
<== NOT EXECUTED
buf->st_ctime = rtems_rfs_file_shared_get_ctime (shared);
400399a8: c0 26 60 48 clr [ %i1 + 0x48 ]
<== NOT EXECUTED
if (S_ISLNK (buf->st_mode))
400399ac: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
400399b0: 82 08 40 02 and %g1, %g2, %g1
<== NOT EXECUTED
400399b4: 05 00 00 28 sethi %hi(0xa000), %g2
<== NOT EXECUTED
400399b8: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
400399bc: 12 80 00 25 bne 40039a50 <rtems_rfs_rtems_fstat+0x1bc>
<== NOT EXECUTED
400399c0: 92 02 20 84 add %o0, 0x84, %o1
<== NOT EXECUTED
buf->st_size = rtems_rfs_file_shared_get_block_offset (shared);
400399c4: c2 12 20 8a lduh [ %o0 + 0x8a ], %g1
<== NOT EXECUTED
400399c8: c2 26 60 24 st %g1, [ %i1 + 0x24 ]
<== NOT EXECUTED
400399cc: c0 26 60 20 clr [ %i1 + 0x20 ]
<== NOT EXECUTED
buf->st_size = rtems_rfs_inode_get_size (fs, &inode);
}
buf->st_blksize = rtems_rfs_fs_block_size (fs);
rc = rtems_rfs_inode_close (fs, &inode);
400399d0: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
buf->st_blksize = rtems_rfs_fs_block_size (fs);
400399d4: c2 07 60 08 ld [ %i5 + 8 ], %g1
<== NOT EXECUTED
400399d8: c2 26 60 58 st %g1, [ %i1 + 0x58 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &inode);
400399dc: 40 00 72 68 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400399e0: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
if (rc > 0)
400399e4: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400399e8: 14 80 00 5f bg 40039b64 <rtems_rfs_rtems_fstat+0x2d0>
<== NOT EXECUTED
400399ec: 01 00 00 00 nop
<== NOT EXECUTED
{
return rtems_rfs_rtems_error ("stat: closing inode", rc);
}
return 0;
}
400399f0: 81 c7 e0 08 ret
<== NOT EXECUTED
400399f4: 81 e8 00 00 restore
<== NOT EXECUTED
* @retval block The block number.
*/
static inline uint32_t
rtems_rfs_inode_get_block (rtems_rfs_inode_handle* handle, int block)
{
return rtems_rfs_read_u32 (&handle->node->data.blocks[block]);
400399f8: f8 08 60 21 ldub [ %g1 + 0x21 ], %i4
<== NOT EXECUTED
400399fc: c8 08 60 22 ldub [ %g1 + 0x22 ], %g4
<== NOT EXECUTED
40039a00: f4 08 60 23 ldub [ %g1 + 0x23 ], %i2
<== NOT EXECUTED
40039a04: de 08 60 1c ldub [ %g1 + 0x1c ], %o7
<== NOT EXECUTED
40039a08: c6 08 60 1d ldub [ %g1 + 0x1d ], %g3
<== NOT EXECUTED
40039a0c: c4 08 60 1e ldub [ %g1 + 0x1e ], %g2
<== NOT EXECUTED
40039a10: f6 08 60 1f ldub [ %g1 + 0x1f ], %i3
<== NOT EXECUTED
40039a14: 83 2b 60 18 sll %o5, 0x18, %g1
<== NOT EXECUTED
40039a18: b9 2f 20 10 sll %i4, 0x10, %i4
<== NOT EXECUTED
40039a1c: b8 17 00 01 or %i4, %g1, %i4
<== NOT EXECUTED
40039a20: 83 2b e0 18 sll %o7, 0x18, %g1
<== NOT EXECUTED
40039a24: 89 29 20 08 sll %g4, 8, %g4
<== NOT EXECUTED
40039a28: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40039a2c: 88 11 00 1c or %g4, %i4, %g4
<== NOT EXECUTED
40039a30: 86 10 c0 01 or %g3, %g1, %g3
<== NOT EXECUTED
40039a34: 88 16 80 04 or %i2, %g4, %g4
<== NOT EXECUTED
40039a38: 83 28 a0 08 sll %g2, 8, %g1
<== NOT EXECUTED
buf->st_rdev =
40039a3c: c8 26 60 1c st %g4, [ %i1 + 0x1c ]
<== NOT EXECUTED
40039a40: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
40039a44: 82 16 c0 01 or %i3, %g1, %g1
<== NOT EXECUTED
40039a48: 10 bf ff a8 b 400398e8 <rtems_rfs_rtems_fstat+0x54>
<== NOT EXECUTED
40039a4c: c2 26 60 18 st %g1, [ %i1 + 0x18 ]
<== 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);
40039a50: 40 00 5a 21 call 400502d4 <rtems_rfs_block_get_size>
<== NOT EXECUTED
40039a54: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
buf->st_size = rtems_rfs_file_shared_get_size (fs, shared);
40039a58: 10 bf ff de b 400399d0 <rtems_rfs_rtems_fstat+0x13c>
<== NOT EXECUTED
40039a5c: d0 3e 60 20 std %o0, [ %i1 + 0x20 ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->atime);
40039a60: c8 08 60 13 ldub [ %g1 + 0x13 ], %g4
<== NOT EXECUTED
40039a64: f8 08 60 10 ldub [ %g1 + 0x10 ], %i4
<== NOT EXECUTED
40039a68: c6 08 60 11 ldub [ %g1 + 0x11 ], %g3
<== NOT EXECUTED
40039a6c: c4 08 60 12 ldub [ %g1 + 0x12 ], %g2
<== NOT EXECUTED
40039a70: b9 2f 20 18 sll %i4, 0x18, %i4
<== NOT EXECUTED
buf->st_atime = rtems_rfs_inode_get_atime (&inode);
40039a74: c0 26 60 28 clr [ %i1 + 0x28 ]
<== NOT EXECUTED
40039a78: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40039a7c: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40039a80: 86 10 c0 1c or %g3, %i4, %g3
<== NOT EXECUTED
40039a84: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40039a88: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
40039a8c: c4 26 60 2c st %g2, [ %i1 + 0x2c ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->mtime);
40039a90: c8 08 60 17 ldub [ %g1 + 0x17 ], %g4
<== NOT EXECUTED
40039a94: f8 08 60 14 ldub [ %g1 + 0x14 ], %i4
<== NOT EXECUTED
40039a98: c6 08 60 15 ldub [ %g1 + 0x15 ], %g3
<== NOT EXECUTED
40039a9c: c4 08 60 16 ldub [ %g1 + 0x16 ], %g2
<== NOT EXECUTED
40039aa0: b9 2f 20 18 sll %i4, 0x18, %i4
<== NOT EXECUTED
buf->st_mtime = rtems_rfs_inode_get_mtime (&inode);
40039aa4: c0 26 60 38 clr [ %i1 + 0x38 ]
<== NOT EXECUTED
40039aa8: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40039aac: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40039ab0: 86 10 c0 1c or %g3, %i4, %g3
<== NOT EXECUTED
40039ab4: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40039ab8: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
40039abc: c4 26 60 3c st %g2, [ %i1 + 0x3c ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->ctime);
40039ac0: c8 08 60 1b ldub [ %g1 + 0x1b ], %g4
<== NOT EXECUTED
40039ac4: f8 08 60 18 ldub [ %g1 + 0x18 ], %i4
<== NOT EXECUTED
40039ac8: c6 08 60 19 ldub [ %g1 + 0x19 ], %g3
<== NOT EXECUTED
40039acc: c4 08 60 1a ldub [ %g1 + 0x1a ], %g2
<== NOT EXECUTED
40039ad0: b9 2f 20 18 sll %i4, 0x18, %i4
<== NOT EXECUTED
buf->st_ctime = rtems_rfs_inode_get_ctime (&inode);
40039ad4: c0 26 60 48 clr [ %i1 + 0x48 ]
<== NOT EXECUTED
40039ad8: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40039adc: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40039ae0: 86 10 c0 1c or %g3, %i4, %g3
<== NOT EXECUTED
40039ae4: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40039ae8: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
40039aec: c4 26 60 4c st %g2, [ %i1 + 0x4c ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
40039af0: f8 08 60 0c ldub [ %g1 + 0xc ], %i4
<== NOT EXECUTED
40039af4: c6 08 60 0d ldub [ %g1 + 0xd ], %g3
<== NOT EXECUTED
40039af8: c4 08 60 0e ldub [ %g1 + 0xe ], %g2
<== NOT EXECUTED
40039afc: c8 08 60 0f ldub [ %g1 + 0xf ], %g4
<== NOT EXECUTED
40039b00: b9 2f 20 18 sll %i4, 0x18, %i4
<== NOT EXECUTED
40039b04: 87 28 e0 10 sll %g3, 0x10, %g3
<== NOT EXECUTED
40039b08: 85 28 a0 08 sll %g2, 8, %g2
<== NOT EXECUTED
40039b0c: 86 10 c0 1c or %g3, %i4, %g3
<== NOT EXECUTED
40039b10: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40039b14: 84 11 00 02 or %g4, %g2, %g2
<== NOT EXECUTED
buf->st_blocks = rtems_rfs_inode_get_block_count (&inode);
40039b18: c4 26 60 5c st %g2, [ %i1 + 0x5c ]
<== NOT EXECUTED
if (S_ISLNK (buf->st_mode))
40039b1c: 07 00 00 3c sethi %hi(0xf000), %g3
<== NOT EXECUTED
40039b20: c4 06 60 0c ld [ %i1 + 0xc ], %g2
<== NOT EXECUTED
40039b24: 84 08 80 03 and %g2, %g3, %g2
<== NOT EXECUTED
40039b28: 07 00 00 28 sethi %hi(0xa000), %g3
<== NOT EXECUTED
40039b2c: 80 a0 80 03 cmp %g2, %g3
<== NOT EXECUTED
40039b30: 12 80 00 09 bne 40039b54 <rtems_rfs_rtems_fstat+0x2c0>
<== NOT EXECUTED
40039b34: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->block_offset);
40039b38: c6 08 60 0b ldub [ %g1 + 0xb ], %g3
<== NOT EXECUTED
40039b3c: c4 08 60 0a ldub [ %g1 + 0xa ], %g2
<== NOT EXECUTED
40039b40: 83 28 a0 08 sll %g2, 8, %g1
<== NOT EXECUTED
buf->st_size = rtems_rfs_inode_get_block_offset (&inode);
40039b44: c0 26 60 20 clr [ %i1 + 0x20 ]
<== NOT EXECUTED
40039b48: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
40039b4c: 10 bf ff a1 b 400399d0 <rtems_rfs_rtems_fstat+0x13c>
<== NOT EXECUTED
40039b50: c2 26 60 24 st %g1, [ %i1 + 0x24 ]
<== NOT EXECUTED
buf->st_size = rtems_rfs_inode_get_size (fs, &inode);
40039b54: 40 00 73 e0 call 40056ad4 <rtems_rfs_inode_get_size>
<== NOT EXECUTED
40039b58: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40039b5c: 10 bf ff 9d b 400399d0 <rtems_rfs_rtems_fstat+0x13c>
<== NOT EXECUTED
40039b60: d0 3e 60 20 std %o0, [ %i1 + 0x20 ]
<== NOT EXECUTED
return rtems_rfs_rtems_error ("stat: closing inode", rc);
40039b64: 40 00 8b 6c call 4005c914 <__errno>
<== NOT EXECUTED
40039b68: b0 10 3f ff mov -1, %i0
<== NOT EXECUTED
40039b6c: fa 22 00 00 st %i5, [ %o0 ]
<== NOT EXECUTED
}
40039b70: 81 c7 e0 08 ret
<== NOT EXECUTED
40039b74: 81 e8 00 00 restore
<== NOT EXECUTED
return rtems_rfs_rtems_error ("stat: opening inode", rc);
40039b78: 40 00 8b 67 call 4005c914 <__errno>
<== NOT EXECUTED
40039b7c: 01 00 00 00 nop
<== NOT EXECUTED
40039b80: f0 22 00 00 st %i0, [ %o0 ]
<== NOT EXECUTED
40039b84: 81 c7 e0 08 ret
<== NOT EXECUTED
40039b88: 91 e8 3f ff restore %g0, -1, %o0
<== NOT EXECUTED
4003a5a8 <rtems_rfs_rtems_imode>:
rtems_rfs_rtems_imode (mode_t mode)
{
/*
* Mapping matches RTEMS so no need to change.
*/
return mode;
4003a5a8: 91 2a 20 10 sll %o0, 0x10, %o0
<== NOT EXECUTED
}
4003a5ac: 81 c3 e0 08 retl
<== NOT EXECUTED
4003a5b0: 91 32 20 10 srl %o0, 0x10, %o0
<== NOT EXECUTED
4003a2b4 <rtems_rfs_rtems_initialise>:
{
4003a2b4: 9d e3 bf 98 save %sp, -104, %sp
<== NOT EXECUTED
uint32_t max_held_buffers = RTEMS_RFS_FS_MAX_HELD_BUFFERS;
4003a2b8: a2 10 20 05 mov 5, %l1
<== NOT EXECUTED
while (options)
4003a2bc: 80 a6 60 00 cmp %i1, 0
<== NOT EXECUTED
4003a2c0: 02 80 00 1f be 4003a33c <rtems_rfs_rtems_initialise+0x88>
<== NOT EXECUTED
4003a2c4: ba 10 20 00 clr %i5
<== NOT EXECUTED
printf ("options=%s\n", options);
4003a2c8: 37 10 02 07 sethi %hi(0x40081c00), %i3
<== NOT EXECUTED
if (strncmp (options, "hold-bitmaps",
4003a2cc: 39 10 02 07 sethi %hi(0x40081c00), %i4
<== NOT EXECUTED
else if (strncmp (options, "no-local-cache",
4003a2d0: 35 10 02 07 sethi %hi(0x40081c00), %i2
<== NOT EXECUTED
else if (strncmp (options, "max-held-bufs",
4003a2d4: 21 10 02 07 sethi %hi(0x40081c00), %l0
<== NOT EXECUTED
printf ("options=%s\n", options);
4003a2d8: b6 16 e2 40 or %i3, 0x240, %i3
<== NOT EXECUTED
if (strncmp (options, "hold-bitmaps",
4003a2dc: b8 17 22 50 or %i4, 0x250, %i4
<== NOT EXECUTED
else if (strncmp (options, "no-local-cache",
4003a2e0: b4 16 a2 60 or %i2, 0x260, %i2
<== NOT EXECUTED
else if (strncmp (options, "max-held-bufs",
4003a2e4: a0 14 22 70 or %l0, 0x270, %l0
<== NOT EXECUTED
printf ("options=%s\n", options);
4003a2e8: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
4003a2ec: 40 00 06 97 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003a2f0: 90 10 00 1b mov %i3, %o0
<== NOT EXECUTED
if (strncmp (options, "hold-bitmaps",
4003a2f4: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
4003a2f8: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
4003a2fc: 40 00 a9 61 call 40064880 <strncmp>
<== NOT EXECUTED
4003a300: 94 10 20 0c mov 0xc, %o2
<== NOT EXECUTED
4003a304: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4003a308: 12 80 00 36 bne 4003a3e0 <rtems_rfs_rtems_initialise+0x12c>
<== NOT EXECUTED
4003a30c: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
flags |= RTEMS_RFS_FS_BITMAPS_HOLD;
4003a310: ba 17 60 01 or %i5, 1, %i5
<== NOT EXECUTED
options = strchr (options, ',');
4003a314: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
4003a318: 40 00 a6 0d call 40063b4c <strchr>
<== NOT EXECUTED
4003a31c: 92 10 20 2c mov 0x2c, %o1
<== NOT EXECUTED
if (options)
4003a320: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4003a324: 22 80 00 07 be,a 4003a340 <rtems_rfs_rtems_initialise+0x8c>
<== NOT EXECUTED
4003a328: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
if (*options == '\0')
4003a32c: c2 4a 20 01 ldsb [ %o0 + 1 ], %g1
<== NOT EXECUTED
4003a330: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4003a334: 12 80 00 33 bne 4003a400 <rtems_rfs_rtems_initialise+0x14c>
<== NOT EXECUTED
4003a338: b2 82 20 01 addcc %o0, 1, %i1
<== NOT EXECUTED
rtems = malloc (sizeof (rtems_rfs_rtems_private));
4003a33c: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
4003a340: 7f ff 40 30 call 4000a400 <calloc>
<== NOT EXECUTED
4003a344: 90 10 20 18 mov 0x18, %o0
<== NOT EXECUTED
if (!rtems)
4003a348: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
4003a34c: 02 80 00 59 be 4003a4b0 <rtems_rfs_rtems_initialise+0x1fc>
<== NOT EXECUTED
4003a350: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_mutex_create (&rtems->access);
4003a354: 40 00 74 9f call 400575d0 <rtems_rfs_mutex_create>
<== NOT EXECUTED
4003a358: 01 00 00 00 nop
<== NOT EXECUTED
4003a35c: b6 10 00 08 mov %o0, %i3
<== NOT EXECUTED
if (rc > 0)
4003a360: 80 a6 e0 00 cmp %i3, 0
<== NOT EXECUTED
4003a364: 14 80 00 4c bg 4003a494 <rtems_rfs_rtems_initialise+0x1e0>
<== NOT EXECUTED
4003a368: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
4003a36c: 7f ff 86 da call 4001bed4 <_Mutex_recursive_Acquire>
<== NOT EXECUTED
4003a370: 01 00 00 00 nop
<== NOT EXECUTED
rc = rtems_rfs_fs_open (mt_entry->dev, rtems, flags, max_held_buffers, &fs);
4003a374: d0 06 20 38 ld [ %i0 + 0x38 ], %o0
<== NOT EXECUTED
4003a378: 94 10 00 1d mov %i5, %o2
<== NOT EXECUTED
4003a37c: 98 07 bf fc add %fp, -4, %o4
<== NOT EXECUTED
4003a380: 96 10 00 11 mov %l1, %o3
<== NOT EXECUTED
4003a384: 40 00 67 19 call 40053fe8 <rtems_rfs_fs_open>
<== NOT EXECUTED
4003a388: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
if (rc)
4003a38c: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
4003a390: 12 80 00 2b bne 4003a43c <rtems_rfs_rtems_initialise+0x188>
<== NOT EXECUTED
4003a394: c2 07 bf fc ld [ %fp + -4 ], %g1
<== NOT EXECUTED
mt_entry->ops = &rtems_rfs_ops;
4003a398: 05 10 02 07 sethi %hi(0x40081c00), %g2
<== NOT EXECUTED
4003a39c: 84 10 a2 80 or %g2, 0x280, %g2 ! 40081e80 <rtems_rfs_ops>
<== NOT EXECUTED
mt_entry->fs_info = fs;
4003a3a0: c2 26 20 08 st %g1, [ %i0 + 8 ]
<== NOT EXECUTED
rtems_rfs_buffers_release (fs);
4003a3a4: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
mt_entry->ops = &rtems_rfs_ops;
4003a3a8: c4 26 20 0c st %g2, [ %i0 + 0xc ]
<== NOT EXECUTED
mt_entry->mt_fs_root->location.node_access = (void*) RTEMS_RFS_ROOT_INO;
4003a3ac: 84 10 20 01 mov 1, %g2
<== NOT EXECUTED
4003a3b0: c6 06 20 24 ld [ %i0 + 0x24 ], %g3
<== NOT EXECUTED
4003a3b4: c4 20 e0 08 st %g2, [ %g3 + 8 ]
<== NOT EXECUTED
mt_entry->mt_fs_root->location.handlers = &rtems_rfs_rtems_dir_handlers;
4003a3b8: 05 10 02 20 sethi %hi(0x40088000), %g2
<== NOT EXECUTED
4003a3bc: 84 10 a3 94 or %g2, 0x394, %g2 ! 40088394 <rtems_rfs_rtems_dir_handlers>
<== NOT EXECUTED
4003a3c0: c4 20 e0 10 st %g2, [ %g3 + 0x10 ]
<== NOT EXECUTED
4003a3c4: 40 00 5d 4f call 40051900 <rtems_rfs_buffers_release>
<== NOT EXECUTED
4003a3c8: f8 00 60 80 ld [ %g1 + 0x80 ], %i4
<== NOT EXECUTED
_Mutex_recursive_Release( mutex );
4003a3cc: 7f ff 86 e7 call 4001bf68 <_Mutex_recursive_Release>
<== NOT EXECUTED
4003a3d0: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
}
4003a3d4: b0 10 00 1d mov %i5, %i0
<== NOT EXECUTED
4003a3d8: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a3dc: 81 e8 00 00 restore
<== NOT EXECUTED
else if (strncmp (options, "no-local-cache",
4003a3e0: 94 10 20 0e mov 0xe, %o2
<== NOT EXECUTED
4003a3e4: 40 00 a9 27 call 40064880 <strncmp>
<== NOT EXECUTED
4003a3e8: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
4003a3ec: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4003a3f0: 12 80 00 08 bne 4003a410 <rtems_rfs_rtems_initialise+0x15c>
<== NOT EXECUTED
4003a3f4: 92 10 00 10 mov %l0, %o1
<== NOT EXECUTED
4003a3f8: 10 bf ff c7 b 4003a314 <rtems_rfs_rtems_initialise+0x60>
<== NOT EXECUTED
4003a3fc: ba 17 60 02 or %i5, 2, %i5
<== NOT EXECUTED
while (options)
4003a400: 32 bf ff bb bne,a 4003a2ec <rtems_rfs_rtems_initialise+0x38>
<== NOT EXECUTED
4003a404: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
rtems = malloc (sizeof (rtems_rfs_rtems_private));
4003a408: 10 bf ff ce b 4003a340 <rtems_rfs_rtems_initialise+0x8c>
<== NOT EXECUTED
4003a40c: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
else if (strncmp (options, "max-held-bufs",
4003a410: 94 10 20 0d mov 0xd, %o2
<== NOT EXECUTED
4003a414: 40 00 a9 1b call 40064880 <strncmp>
<== NOT EXECUTED
4003a418: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
4003a41c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4003a420: 12 80 00 17 bne 4003a47c <rtems_rfs_rtems_initialise+0x1c8>
<== NOT EXECUTED
4003a424: 94 10 20 00 clr %o2
<== NOT EXECUTED
max_held_buffers = strtoul (options + sizeof ("max-held-bufs"), 0, 0);
4003a428: 92 10 20 00 clr %o1
<== NOT EXECUTED
4003a42c: 40 00 b2 1a call 40066c94 <strtoul>
<== NOT EXECUTED
4003a430: 90 06 60 0e add %i1, 0xe, %o0
<== NOT EXECUTED
4003a434: 10 bf ff b8 b 4003a314 <rtems_rfs_rtems_initialise+0x60>
<== NOT EXECUTED
4003a438: a2 10 00 08 mov %o0, %l1
<== NOT EXECUTED
4003a43c: 7f ff 86 cb call 4001bf68 <_Mutex_recursive_Release>
<== NOT EXECUTED
4003a440: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
rtems_rfs_mutex_destroy (&rtems->access);
4003a444: 40 00 74 6e call 400575fc <rtems_rfs_mutex_destroy>
<== NOT EXECUTED
4003a448: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
free (rtems);
4003a44c: 7f ff 44 8d call 4000b680 <free>
<== NOT EXECUTED
4003a450: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
return rtems_rfs_rtems_error ("initialise: open", errno);
4003a454: 40 00 89 30 call 4005c914 <__errno>
<== NOT EXECUTED
4003a458: 01 00 00 00 nop
<== NOT EXECUTED
4003a45c: 40 00 89 2e call 4005c914 <__errno>
<== NOT EXECUTED
4003a460: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
4003a464: c2 07 40 00 ld [ %i5 ], %g1
<== NOT EXECUTED
4003a468: 80 a0 00 01 cmp %g0, %g1
<== NOT EXECUTED
4003a46c: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
4003a470: ba 60 20 00 subx %g0, 0, %i5
<== NOT EXECUTED
}
4003a474: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a478: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
return rtems_rfs_rtems_error ("initialise: invalid option", EINVAL);
4003a47c: 40 00 89 26 call 4005c914 <__errno>
<== NOT EXECUTED
4003a480: ba 10 3f ff mov -1, %i5
<== NOT EXECUTED
4003a484: 82 10 20 16 mov 0x16, %g1
<== NOT EXECUTED
4003a488: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
}
4003a48c: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a490: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
free (rtems);
4003a494: 7f ff 44 7b call 4000b680 <free>
<== NOT EXECUTED
4003a498: ba 10 3f ff mov -1, %i5
<== NOT EXECUTED
return rtems_rfs_rtems_error ("initialise: cannot create mutex", rc);
4003a49c: 40 00 89 1e call 4005c914 <__errno>
<== NOT EXECUTED
4003a4a0: b0 10 00 1d mov %i5, %i0
<== NOT EXECUTED
4003a4a4: f6 22 00 00 st %i3, [ %o0 ]
<== NOT EXECUTED
4003a4a8: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a4ac: 81 e8 00 00 restore
<== NOT EXECUTED
return rtems_rfs_rtems_error ("initialise: local data", ENOMEM);
4003a4b0: 40 00 89 19 call 4005c914 <__errno>
<== NOT EXECUTED
4003a4b4: ba 10 3f ff mov -1, %i5
<== NOT EXECUTED
4003a4b8: 82 10 20 0c mov 0xc, %g1
<== NOT EXECUTED
4003a4bc: 10 bf ff c6 b 4003a3d4 <rtems_rfs_rtems_initialise+0x120>
<== NOT EXECUTED
4003a4c0: c2 22 00 00 st %g1, [ %o0 ]
<== NOT EXECUTED
40081ecc <rtems_rfs_rtems_link_handlers>:
40081ecc: 40 00 80 8c 40 00 7f 00 40 03 eb d8 40 03 ec 2c @...@...@...@..,
40081edc: 40 03 eb 08 40 03 eb 84 40 03 98 94 40 00 7f 18 @...@...@...@...
40081eec: 40 03 ea c8 40 03 ea c8 40 00 7f 08 40 00 80 94 @...@...@...@...
40081efc: 40 00 7f 34 40 00 80 9c 40 00 81 34 40 00 80 70 @..4@...@..4@..p
4003a5b4 <rtems_rfs_rtems_mode>:
{
/*
* Mapping matches RTEMS so no need to change.
*/
return imode;
}
4003a5b4: 81 c3 e0 08 retl
<== NOT EXECUTED
4003a5b8: 01 00 00 00 nop
<== NOT EXECUTED
40039b8c <rtems_rfs_rtems_rmnod>:
* @return int
*/
int
rtems_rfs_rtems_rmnod (const rtems_filesystem_location_info_t* parent_pathloc,
const rtems_filesystem_location_info_t* pathloc)
{
40039b8c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
rtems_rfs_file_system* fs = rtems_rfs_rtems_pathloc_dev (pathloc);
40039b90: c2 06 60 14 ld [ %i1 + 0x14 ], %g1
<== NOT EXECUTED
if (rtems_rfs_rtems_trace (RTEMS_RFS_RTEMS_DEBUG_RMNOD))
printf ("rtems-rfs: rmnod: parent:%" PRId32 " doff:%" PRIu32 ", ino:%" PRId32 "\n",
parent, doff, ino);
rc = rtems_rfs_unlink (fs, parent, ino, doff, rtems_rfs_unlink_dir_if_empty);
40039b94: d2 06 20 08 ld [ %i0 + 8 ], %o1
<== NOT EXECUTED
40039b98: d6 06 60 0c ld [ %i1 + 0xc ], %o3
<== NOT EXECUTED
40039b9c: d4 06 60 08 ld [ %i1 + 8 ], %o2
<== NOT EXECUTED
40039ba0: d0 00 60 08 ld [ %g1 + 8 ], %o0
<== NOT EXECUTED
40039ba4: 40 00 74 5a call 40056d0c <rtems_rfs_unlink>
<== NOT EXECUTED
40039ba8: 98 10 20 01 mov 1, %o4
<== NOT EXECUTED
if (rc)
40039bac: b0 92 20 00 orcc %o0, 0, %i0
<== NOT EXECUTED
40039bb0: 12 80 00 04 bne 40039bc0 <rtems_rfs_rtems_rmnod+0x34>
<== NOT EXECUTED
40039bb4: 01 00 00 00 nop
<== NOT EXECUTED
{
return rtems_rfs_rtems_error ("rmnod: unlinking", rc);
}
return 0;
}
40039bb8: 81 c7 e0 08 ret
<== NOT EXECUTED
40039bbc: 81 e8 00 00 restore
<== NOT EXECUTED
return rtems_rfs_rtems_error ("rmnod: unlinking", rc);
40039bc0: 40 00 8b 55 call 4005c914 <__errno>
<== NOT EXECUTED
40039bc4: 01 00 00 00 nop
<== NOT EXECUTED
40039bc8: f0 22 00 00 st %i0, [ %o0 ]
<== NOT EXECUTED
}
40039bcc: 81 c7 e0 08 ret
<== NOT EXECUTED
40039bd0: 91 e8 3f ff restore %g0, -1, %o0
<== NOT EXECUTED
4003a4c4 <rtems_rfs_rtems_set_handlers>:
*/
bool
rtems_rfs_rtems_set_handlers (rtems_filesystem_location_info_t* loc,
rtems_rfs_inode_handle* inode)
{
4003a4c4: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
4003a4c8: c2 06 60 0c ld [ %i1 + 0xc ], %g1
<== NOT EXECUTED
4003a4cc: d2 08 60 02 ldub [ %g1 + 2 ], %o1
<== NOT EXECUTED
4003a4d0: c2 08 60 03 ldub [ %g1 + 3 ], %g1
<== NOT EXECUTED
4003a4d4: 93 2a 60 08 sll %o1, 8, %o1
<== NOT EXECUTED
uint16_t mode = rtems_rfs_inode_get_mode (inode);
loc->handlers = NULL;
if (RTEMS_RFS_S_ISDIR (mode))
4003a4d8: 05 00 00 10 sethi %hi(0x4000), %g2
<== NOT EXECUTED
4003a4dc: 92 12 40 01 or %o1, %g1, %o1
<== NOT EXECUTED
4003a4e0: 82 0a 70 00 and %o1, -4096, %g1
<== NOT EXECUTED
4003a4e4: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
4003a4e8: 02 80 00 1b be 4003a554 <rtems_rfs_rtems_set_handlers+0x90>
<== NOT EXECUTED
4003a4ec: c0 26 20 10 clr [ %i0 + 0x10 ]
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (dir);
else if (RTEMS_RFS_S_ISCHR (mode) || RTEMS_RFS_S_ISBLK(mode))
4003a4f0: 05 3f ff ec sethi %hi(0xffffb000), %g2
<== NOT EXECUTED
4003a4f4: 07 00 00 08 sethi %hi(0x2000), %g3
<== NOT EXECUTED
4003a4f8: 84 0a 40 02 and %o1, %g2, %g2
<== NOT EXECUTED
4003a4fc: 80 a0 80 03 cmp %g2, %g3
<== NOT EXECUTED
4003a500: 02 80 00 0e be 4003a538 <rtems_rfs_rtems_set_handlers+0x74>
<== NOT EXECUTED
4003a504: 05 00 00 28 sethi %hi(0xa000), %g2
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (device);
else if (RTEMS_RFS_S_ISLNK (mode))
4003a508: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
4003a50c: 02 80 00 20 be 4003a58c <rtems_rfs_rtems_set_handlers+0xc8>
<== NOT EXECUTED
4003a510: 05 00 00 20 sethi %hi(0x8000), %g2
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (link);
else if (RTEMS_RFS_S_ISREG (mode))
4003a514: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
4003a518: 02 80 00 16 be 4003a570 <rtems_rfs_rtems_set_handlers+0xac>
<== NOT EXECUTED
4003a51c: 11 10 02 07 sethi %hi(0x40081c00), %o0
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (file);
else
{
printf ("rtems-rfs: mode type unknown: %04x\n", mode);
4003a520: 40 00 06 0a call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003a524: 90 12 23 18 or %o0, 0x318, %o0 ! 40081f18 <rtems_rfs_rtems_eval_config+0xc>
<== NOT EXECUTED
return false;
4003a528: 82 10 20 00 clr %g1
<== NOT EXECUTED
}
return true;
}
4003a52c: b0 08 60 01 and %g1, 1, %i0
<== NOT EXECUTED
4003a530: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a534: 81 e8 00 00 restore
<== NOT EXECUTED
return true;
4003a538: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (device);
4003a53c: 05 10 02 20 sethi %hi(0x40088000), %g2
<== NOT EXECUTED
4003a540: 84 10 a3 54 or %g2, 0x354, %g2 ! 40088354 <rtems_rfs_rtems_device_handlers>
<== NOT EXECUTED
4003a544: c4 26 20 10 st %g2, [ %i0 + 0x10 ]
<== NOT EXECUTED
}
4003a548: b0 08 60 01 and %g1, 1, %i0
<== NOT EXECUTED
4003a54c: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a550: 81 e8 00 00 restore
<== NOT EXECUTED
return true;
4003a554: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (dir);
4003a558: 05 10 02 20 sethi %hi(0x40088000), %g2
<== NOT EXECUTED
4003a55c: 84 10 a3 94 or %g2, 0x394, %g2 ! 40088394 <rtems_rfs_rtems_dir_handlers>
<== NOT EXECUTED
4003a560: c4 26 20 10 st %g2, [ %i0 + 0x10 ]
<== NOT EXECUTED
}
4003a564: b0 08 60 01 and %g1, 1, %i0
<== NOT EXECUTED
4003a568: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a56c: 81 e8 00 00 restore
<== NOT EXECUTED
return true;
4003a570: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (file);
4003a574: 05 10 02 20 sethi %hi(0x40088000), %g2
<== NOT EXECUTED
4003a578: 84 10 a3 d4 or %g2, 0x3d4, %g2 ! 400883d4 <rtems_rfs_rtems_file_handlers>
<== NOT EXECUTED
4003a57c: c4 26 20 10 st %g2, [ %i0 + 0x10 ]
<== NOT EXECUTED
}
4003a580: b0 08 60 01 and %g1, 1, %i0
<== NOT EXECUTED
4003a584: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a588: 81 e8 00 00 restore
<== NOT EXECUTED
return true;
4003a58c: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
loc->handlers = rtems_rfs_rtems_handlers (link);
4003a590: 05 10 02 07 sethi %hi(0x40081c00), %g2
<== NOT EXECUTED
4003a594: 84 10 a2 cc or %g2, 0x2cc, %g2 ! 40081ecc <rtems_rfs_rtems_link_handlers>
<== NOT EXECUTED
4003a598: c4 26 20 10 st %g2, [ %i0 + 0x10 ]
<== NOT EXECUTED
}
4003a59c: b0 08 60 01 and %g1, 1, %i0
<== NOT EXECUTED
4003a5a0: 81 c7 e0 08 ret
<== NOT EXECUTED
4003a5a4: 81 e8 00 00 restore
<== NOT EXECUTED
4003a024 <rtems_rfs_rtems_shutdown>:
/**
* Shutdown the file system.
*/
void
rtems_rfs_rtems_shutdown (rtems_filesystem_mount_table_entry_t* mt_entry)
{
4003a024: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
rtems_rfs_file_system* fs = mt_entry->fs_info;
4003a028: d0 06 20 08 ld [ %i0 + 8 ], %o0
<== NOT EXECUTED
rtems_rfs_rtems_private* rtems;
rtems = rtems_rfs_fs_user (fs);
/* FIXME: Return value? */
rtems_rfs_fs_close(fs);
4003a02c: 40 00 69 f9 call 40054810 <rtems_rfs_fs_close>
<== NOT EXECUTED
4003a030: f0 02 20 80 ld [ %o0 + 0x80 ], %i0
<== NOT EXECUTED
rtems_rfs_mutex_destroy (&rtems->access);
4003a034: 40 00 75 72 call 400575fc <rtems_rfs_mutex_destroy>
<== NOT EXECUTED
4003a038: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
free (rtems);
4003a03c: 7f ff 45 91 call 4000b680 <free>
<== NOT EXECUTED
4003a040: 81 e8 00 00 restore
<== NOT EXECUTED
40057164 <rtems_rfs_symlink>:
const char* link,
int link_length,
uid_t uid,
gid_t gid,
rtems_rfs_ino parent)
{
40057164: 9d e3 bf 00 save %sp, -256, %sp
<== NOT EXECUTED
rtems_rfs_inode_handle inode;
rtems_rfs_ino ino;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_SYMLINK))
40057168: 90 10 20 02 mov 2, %o0
<== NOT EXECUTED
{
4005716c: e2 17 a0 5e lduh [ %fp + 0x5e ], %l1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_SYMLINK))
40057170: 40 00 03 8c call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40057174: 92 10 20 00 clr %o1
<== NOT EXECUTED
40057178: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005717c: 32 80 00 19 bne,a 400571e0 <rtems_rfs_symlink+0x7c>
<== NOT EXECUTED
40057180: d2 07 a0 60 ld [ %fp + 0x60 ], %o1
<== NOT EXECUTED
printf (" link:");
for (c = 0; c < link_length; c++)
printf ("%c", link[c]);
}
if (link_length >= rtems_rfs_fs_block_size (fs))
40057184: c2 06 20 08 ld [ %i0 + 8 ], %g1
<== NOT EXECUTED
40057188: 80 a0 40 1c cmp %g1, %i4
<== NOT EXECUTED
4005718c: 08 80 00 13 bleu 400571d8 <rtems_rfs_symlink+0x74>
<== NOT EXECUTED
40057190: b4 10 20 5b mov 0x5b, %i2
<== NOT EXECUTED
return ENAMETOOLONG;
rc = rtems_rfs_inode_create (fs, parent, name, strlen (name),
40057194: 40 00 35 5b call 40064700 <strlen>
<== NOT EXECUTED
40057198: 90 10 00 19 mov %i1, %o0
<== NOT EXECUTED
4005719c: 82 07 bf 74 add %fp, -140, %g1
<== NOT EXECUTED
400571a0: e2 23 a0 60 st %l1, [ %sp + 0x60 ]
<== NOT EXECUTED
400571a4: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
400571a8: c2 23 a0 64 st %g1, [ %sp + 0x64 ]
<== NOT EXECUTED
400571ac: 9a 10 20 01 mov 1, %o5
<== NOT EXECUTED
400571b0: fa 23 a0 5c st %i5, [ %sp + 0x5c ]
<== NOT EXECUTED
400571b4: 94 10 00 19 mov %i1, %o2
<== NOT EXECUTED
400571b8: d2 07 a0 60 ld [ %fp + 0x60 ], %o1
<== NOT EXECUTED
400571bc: 19 00 00 28 sethi %hi(0xa000), %o4
<== NOT EXECUTED
400571c0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400571c4: 7f ff fd 57 call 40056720 <rtems_rfs_inode_create>
<== NOT EXECUTED
400571c8: 98 13 21 ff or %o4, 0x1ff, %o4
<== NOT EXECUTED
RTEMS_RFS_S_SYMLINK,
1, uid, gid, &ino);
if (rc > 0)
400571cc: b4 92 20 00 orcc %o0, 0, %i2
<== NOT EXECUTED
400571d0: 04 80 00 20 ble 40057250 <rtems_rfs_symlink+0xec>
<== NOT EXECUTED
400571d4: d2 07 bf 74 ld [ %fp + -140 ], %o1
<== NOT EXECUTED
rtems_rfs_inode_set_block_offset (&inode, link_length);
rc = rtems_rfs_inode_close (fs, &inode);
return rc;
}
400571d8: 81 c7 e0 08 ret
<== NOT EXECUTED
400571dc: 91 e8 00 1a restore %g0, %i2, %o0
<== NOT EXECUTED
printf ("rtems-rfs: symlink: parent:%" PRIu32 " name:", parent);
400571e0: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
400571e4: 7f ff 92 d9 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400571e8: 90 12 22 f8 or %o0, 0x2f8, %o0 ! 400882f8 <MSDOS_DOT_NAME+0x21d0>
<== NOT EXECUTED
for (c = 0; c < length; c++)
400571ec: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
400571f0: 04 80 00 0a ble 40057218 <rtems_rfs_symlink+0xb4>
<== NOT EXECUTED
400571f4: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
400571f8: a0 10 00 19 mov %i1, %l0
<== NOT EXECUTED
400571fc: b4 06 80 19 add %i2, %i1, %i2
<== NOT EXECUTED
printf ("%c", name[c]);
40057200: 7f ff 92 e7 call 4003bd9c <__wrap_putchar>
<== NOT EXECUTED
40057204: d0 4c 00 00 ldsb [ %l0 ], %o0
<== NOT EXECUTED
40057208: a0 04 20 01 inc %l0
<== NOT EXECUTED
for (c = 0; c < length; c++)
4005720c: 80 a4 00 1a cmp %l0, %i2
<== NOT EXECUTED
40057210: 12 bf ff fc bne 40057200 <rtems_rfs_symlink+0x9c>
<== NOT EXECUTED
40057214: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
printf (" link:");
40057218: 7f ff 92 cc call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005721c: 90 12 23 20 or %o0, 0x320, %o0 ! 40088320 <MSDOS_DOT_NAME+0x21f8>
<== NOT EXECUTED
for (c = 0; c < link_length; c++)
40057220: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
40057224: 04 bf ff d8 ble 40057184 <rtems_rfs_symlink+0x20>
<== NOT EXECUTED
40057228: a0 07 00 1b add %i4, %i3, %l0
<== NOT EXECUTED
4005722c: b4 10 00 1b mov %i3, %i2
<== NOT EXECUTED
printf ("%c", link[c]);
40057230: 7f ff 92 db call 4003bd9c <__wrap_putchar>
<== NOT EXECUTED
40057234: d0 4e 80 00 ldsb [ %i2 ], %o0
<== NOT EXECUTED
40057238: b4 06 a0 01 inc %i2
<== NOT EXECUTED
for (c = 0; c < link_length; c++)
4005723c: 80 a4 00 1a cmp %l0, %i2
<== NOT EXECUTED
40057240: 12 bf ff fc bne 40057230 <rtems_rfs_symlink+0xcc>
<== NOT EXECUTED
40057244: 01 00 00 00 nop
<== NOT EXECUTED
40057248: 10 bf ff d0 b 40057188 <rtems_rfs_symlink+0x24>
<== NOT EXECUTED
4005724c: c2 06 20 08 ld [ %i0 + 8 ], %g1
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, ino, &inode, true);
40057250: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40057254: 94 07 bf 88 add %fp, -120, %o2
<== NOT EXECUTED
40057258: 7f ff fb d2 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
4005725c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40057260: b4 92 20 00 orcc %o0, 0, %i2
<== NOT EXECUTED
40057264: 14 bf ff dd bg 400571d8 <rtems_rfs_symlink+0x74>
<== NOT EXECUTED
40057268: 80 a7 20 13 cmp %i4, 0x13
<== NOT EXECUTED
if (link_length < RTEMS_RFS_INODE_DATA_NAME_SIZE)
4005726c: 18 80 00 1f bgu 400572e8 <rtems_rfs_symlink+0x184>
<== NOT EXECUTED
40057270: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
memset (inode.node->data.name, 0, RTEMS_RFS_INODE_DATA_NAME_SIZE);
40057274: fa 07 bf 94 ld [ %fp + -108 ], %i5
<== NOT EXECUTED
40057278: 82 07 60 1c add %i5, 0x1c, %g1
<== NOT EXECUTED
4005727c: 94 10 20 14 mov 0x14, %o2
<== NOT EXECUTED
40057280: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
40057284: 40 00 27 dd call 400611f8 <memset>
<== NOT EXECUTED
40057288: 92 10 20 00 clr %o1
<== NOT EXECUTED
memcpy (inode.node->data.name, link, link_length);
4005728c: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
40057290: 40 00 27 50 call 40060fd0 <memcpy>
<== NOT EXECUTED
40057294: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
rtems_rfs_write_u32 (&handle->node->block_count, block_count);
40057298: c0 2f 60 0c clrb [ %i5 + 0xc ]
<== NOT EXECUTED
4005729c: c2 07 bf 94 ld [ %fp + -108 ], %g1
<== NOT EXECUTED
400572a0: c0 28 60 0d clrb [ %g1 + 0xd ]
<== NOT EXECUTED
400572a4: c2 07 bf 94 ld [ %fp + -108 ], %g1
<== NOT EXECUTED
400572a8: c0 28 60 0e clrb [ %g1 + 0xe ]
<== NOT EXECUTED
400572ac: c2 07 bf 94 ld [ %fp + -108 ], %g1
<== NOT EXECUTED
400572b0: c0 28 60 0f clrb [ %g1 + 0xf ]
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->block_offset, block_offset);
400572b4: 83 2f 20 10 sll %i4, 0x10, %g1
<== NOT EXECUTED
400572b8: c4 07 bf 94 ld [ %fp + -108 ], %g2
<== NOT EXECUTED
400572bc: 83 30 60 18 srl %g1, 0x18, %g1
<== NOT EXECUTED
400572c0: c2 28 a0 0a stb %g1, [ %g2 + 0xa ]
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &inode);
400572c4: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
400572c8: c2 07 bf 94 ld [ %fp + -108 ], %g1
<== NOT EXECUTED
400572cc: f8 28 60 0b stb %i4, [ %g1 + 0xb ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
400572d0: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
400572d4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400572d8: 7f ff fc 29 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400572dc: c2 2f bf 98 stb %g1, [ %fp + -104 ]
<== NOT EXECUTED
return rc;
400572e0: 10 bf ff be b 400571d8 <rtems_rfs_symlink+0x74>
<== NOT EXECUTED
400572e4: b4 10 00 08 mov %o0, %i2
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, &inode, &map);
400572e8: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
400572ec: 7f ff e4 0d call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
400572f0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
400572f4: b4 92 20 00 orcc %o0, 0, %i2
<== NOT EXECUTED
400572f8: 04 80 00 05 ble 4005730c <rtems_rfs_symlink+0x1a8>
<== NOT EXECUTED
400572fc: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
40057300: 7f ff fc 1f call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40057304: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
return rc;
40057308: 30 bf ff b4 b,a 400571d8 <rtems_rfs_symlink+0x74>
<== NOT EXECUTED
rc = rtems_rfs_block_map_grow (fs, &map, 1, &block);
4005730c: 96 07 bf 78 add %fp, -136, %o3
<== NOT EXECUTED
40057310: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40057314: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40057318: 7f ff e5 58 call 40050878 <rtems_rfs_block_map_grow>
<== NOT EXECUTED
4005731c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40057320: b4 92 20 00 orcc %o0, 0, %i2
<== NOT EXECUTED
40057324: 04 80 00 07 ble 40057340 <rtems_rfs_symlink+0x1dc>
<== NOT EXECUTED
40057328: d4 07 bf 78 ld [ %fp + -136 ], %o2
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
4005732c: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40057330: 7f ff e4 5b call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40057334: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
40057338: 10 bf ff f2 b 40057300 <rtems_rfs_symlink+0x19c>
<== NOT EXECUTED
4005733c: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
handle->dirty = false;
40057340: c0 2f bf 7c clrb [ %fp + -132 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, false);
40057344: 96 10 20 00 clr %o3
<== NOT EXECUTED
handle->bnum = 0;
40057348: c0 27 bf 80 clr [ %fp + -128 ]
<== NOT EXECUTED
4005734c: 92 07 bf 7c add %fp, -132, %o1
<== NOT EXECUTED
handle->buffer = NULL;
40057350: c0 27 bf 84 clr [ %fp + -124 ]
<== NOT EXECUTED
40057354: 7f ff e8 0d call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40057358: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005735c: b4 92 20 00 orcc %o0, 0, %i2
<== NOT EXECUTED
40057360: 14 bf ff f4 bg 40057330 <rtems_rfs_symlink+0x1cc>
<== NOT EXECUTED
40057364: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
data = rtems_rfs_buffer_data (&buffer);
40057368: c2 07 bf 84 ld [ %fp + -124 ], %g1
<== NOT EXECUTED
4005736c: c2 00 60 1c ld [ %g1 + 0x1c ], %g1
<== NOT EXECUTED
memset (data, 0xff, rtems_rfs_fs_block_size (fs));
40057370: d4 06 20 08 ld [ %i0 + 8 ], %o2
<== NOT EXECUTED
40057374: 90 10 00 01 mov %g1, %o0
<== NOT EXECUTED
40057378: 40 00 27 a0 call 400611f8 <memset>
<== NOT EXECUTED
4005737c: 92 10 20 ff mov 0xff, %o1
<== NOT EXECUTED
memcpy (data, link, link_length);
40057380: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
40057384: 40 00 27 13 call 40060fd0 <memcpy>
<== NOT EXECUTED
40057388: 92 10 00 1b mov %i3, %o1
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
4005738c: 92 07 bf 7c add %fp, -132, %o1
<== NOT EXECUTED
40057390: 7f ff e8 c5 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
40057394: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_close (fs, &map);
40057398: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
4005739c: c0 2f bf 7c clrb [ %fp + -132 ]
<== NOT EXECUTED
400573a0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
400573a4: c0 27 bf 80 clr [ %fp + -128 ]
<== NOT EXECUTED
400573a8: 7f ff e4 3d call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400573ac: c0 27 bf 84 clr [ %fp + -124 ]
<== NOT EXECUTED
if (rc > 0)
400573b0: b4 92 20 00 orcc %o0, 0, %i2
<== NOT EXECUTED
400573b4: 04 bf ff c1 ble 400572b8 <rtems_rfs_symlink+0x154>
<== NOT EXECUTED
400573b8: 83 2f 20 10 sll %i4, 0x10, %g1
<== NOT EXECUTED
400573bc: 10 bf ff d1 b 40057300 <rtems_rfs_symlink+0x19c>
<== NOT EXECUTED
400573c0: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
400573c4 <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)
{
400573c4: 9d e3 bf 18 save %sp, -232, %sp
<== NOT EXECUTED
rtems_rfs_inode_handle inode;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_SYMLINK_READ))
400573c8: 90 10 20 04 mov 4, %o0
<== NOT EXECUTED
400573cc: 40 00 02 f5 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400573d0: 92 10 20 00 clr %o1
<== NOT EXECUTED
400573d4: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400573d8: 12 80 00 2f bne 40057494 <rtems_rfs_symlink_read+0xd0>
<== NOT EXECUTED
400573dc: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
printf ("rtems-rfs: symlink-read: link:%" PRIu32 "\n", link);
rc = rtems_rfs_inode_open (fs, link, &inode, true);
400573e0: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
400573e4: 94 07 bf 88 add %fp, -120, %o2
<== NOT EXECUTED
400573e8: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
400573ec: 7f ff fb 6d call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
400573f0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc)
400573f4: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400573f8: 12 80 00 25 bne 4005748c <rtems_rfs_symlink_read+0xc8>
<== NOT EXECUTED
400573fc: d2 07 bf 94 ld [ %fp + -108 ], %o1
<== NOT EXECUTED
return rc;
if (!RTEMS_RFS_S_ISLNK (rtems_rfs_inode_get_mode (&inode)))
40057400: 05 00 00 3c sethi %hi(0xf000), %g2
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->mode);
40057404: c2 0a 60 02 ldub [ %o1 + 2 ], %g1
<== NOT EXECUTED
40057408: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
4005740c: 82 08 40 02 and %g1, %g2, %g1
<== NOT EXECUTED
40057410: 05 00 00 28 sethi %hi(0xa000), %g2
<== NOT EXECUTED
40057414: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40057418: 32 80 00 3e bne,a 40057510 <rtems_rfs_symlink_read+0x14c>
<== NOT EXECUTED
4005741c: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->block_offset);
40057420: d4 0a 60 0a ldub [ %o1 + 0xa ], %o2
<== NOT EXECUTED
40057424: c2 0a 60 0b ldub [ %o1 + 0xb ], %g1
<== NOT EXECUTED
40057428: 95 2a a0 08 sll %o2, 8, %o2
<== NOT EXECUTED
{
rtems_rfs_inode_close (fs, &inode);
return EINVAL;
}
*length = rtems_rfs_inode_get_block_offset (&inode);
4005742c: 94 12 80 01 or %o2, %g1, %o2
<== NOT EXECUTED
40057430: 80 a2 80 1b cmp %o2, %i3
<== NOT EXECUTED
40057434: 38 80 00 28 bgu,a 400574d4 <rtems_rfs_symlink_read+0x110>
<== NOT EXECUTED
40057438: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
4005743c: d4 27 00 00 st %o2, [ %i4 ]
<== NOT EXECUTED
return rtems_rfs_read_u32 (&handle->node->block_count);
40057440: c6 0a 60 0c ldub [ %o1 + 0xc ], %g3
<== NOT EXECUTED
40057444: c4 0a 60 0d ldub [ %o1 + 0xd ], %g2
<== NOT EXECUTED
40057448: c2 0a 60 0e ldub [ %o1 + 0xe ], %g1
<== NOT EXECUTED
4005744c: c8 0a 60 0f ldub [ %o1 + 0xf ], %g4
<== NOT EXECUTED
40057450: 87 28 e0 18 sll %g3, 0x18, %g3
<== NOT EXECUTED
40057454: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
40057458: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
4005745c: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
40057460: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if (size < *length)
{
*length = size;
}
if (rtems_rfs_inode_get_block_count (&inode) == 0)
40057464: 80 91 00 01 orcc %g4, %g1, %g0
<== NOT EXECUTED
40057468: 32 80 00 10 bne,a 400574a8 <rtems_rfs_symlink_read+0xe4>
<== NOT EXECUTED
4005746c: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
{
memcpy (path, inode.node->data.name, *length);
40057470: 92 02 60 1c add %o1, 0x1c, %o1
<== NOT EXECUTED
40057474: 40 00 26 d7 call 40060fd0 <memcpy>
<== NOT EXECUTED
40057478: 90 10 00 1a mov %i2, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
return rc;
}
}
rc = rtems_rfs_inode_close (fs, &inode);
4005747c: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
40057480: 7f ff fb bf call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40057484: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40057488: ba 10 00 08 mov %o0, %i5
<== NOT EXECUTED
return rc;
}
4005748c: 81 c7 e0 08 ret
<== NOT EXECUTED
40057490: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
printf ("rtems-rfs: symlink-read: link:%" PRIu32 "\n", link);
40057494: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40057498: 7f ff 92 2c call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005749c: 90 12 23 28 or %o0, 0x328, %o0 ! 40088328 <MSDOS_DOT_NAME+0x2200>
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, link, &inode, true);
400574a0: 10 bf ff d1 b 400573e4 <rtems_rfs_symlink_read+0x20>
<== NOT EXECUTED
400574a4: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
rc = rtems_rfs_block_map_open (fs, &inode, &map);
400574a8: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
400574ac: 7f ff e3 9d call 40050320 <rtems_rfs_block_map_open>
<== NOT EXECUTED
400574b0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
400574b4: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400574b8: 04 80 00 1b ble 40057524 <rtems_rfs_symlink_read+0x160>
<== NOT EXECUTED
400574bc: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
400574c0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
400574c4: 7f ff fb ae call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400574c8: b0 10 00 1d mov %i5, %i0
<== NOT EXECUTED
}
400574cc: 81 c7 e0 08 ret
<== NOT EXECUTED
400574d0: 81 e8 00 00 restore
<== NOT EXECUTED
400574d4: d4 27 00 00 st %o2, [ %i4 ]
<== NOT EXECUTED
400574d8: c6 0a 60 0c ldub [ %o1 + 0xc ], %g3
<== NOT EXECUTED
400574dc: c4 0a 60 0d ldub [ %o1 + 0xd ], %g2
<== NOT EXECUTED
400574e0: c2 0a 60 0e ldub [ %o1 + 0xe ], %g1
<== NOT EXECUTED
400574e4: c8 0a 60 0f ldub [ %o1 + 0xf ], %g4
<== NOT EXECUTED
400574e8: 87 28 e0 18 sll %g3, 0x18, %g3
<== NOT EXECUTED
400574ec: 85 28 a0 10 sll %g2, 0x10, %g2
<== NOT EXECUTED
400574f0: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
400574f4: 84 10 80 03 or %g2, %g3, %g2
<== NOT EXECUTED
400574f8: 82 10 40 02 or %g1, %g2, %g1
<== NOT EXECUTED
if (rtems_rfs_inode_get_block_count (&inode) == 0)
400574fc: 80 91 00 01 orcc %g4, %g1, %g0
<== NOT EXECUTED
40057500: 32 bf ff ea bne,a 400574a8 <rtems_rfs_symlink_read+0xe4>
<== NOT EXECUTED
40057504: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
memcpy (path, inode.node->data.name, *length);
40057508: 10 bf ff db b 40057474 <rtems_rfs_symlink_read+0xb0>
<== NOT EXECUTED
4005750c: 92 02 60 1c add %o1, 0x1c, %o1
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
40057510: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40057514: 7f ff fb 9a call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40057518: ba 10 20 16 mov 0x16, %i5
<== NOT EXECUTED
}
4005751c: 81 c7 e0 08 ret
<== NOT EXECUTED
40057520: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_seek (fs, &map, 0, &block);
40057524: 98 07 bf 78 add %fp, -136, %o4
<== NOT EXECUTED
40057528: 94 10 20 00 clr %o2
<== NOT EXECUTED
4005752c: 96 10 20 00 clr %o3
<== NOT EXECUTED
40057530: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40057534: 7f ff e4 a6 call 400507cc <rtems_rfs_block_map_seek>
<== NOT EXECUTED
40057538: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005753c: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40057540: 04 80 00 07 ble 4005755c <rtems_rfs_symlink_read+0x198>
<== NOT EXECUTED
40057544: d4 07 bf 78 ld [ %fp + -136 ], %o2
<== NOT EXECUTED
rtems_rfs_block_map_close (fs, &map);
40057548: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
4005754c: 7f ff e3 d4 call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
40057550: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &inode);
40057554: 10 bf ff db b 400574c0 <rtems_rfs_symlink_read+0xfc>
<== NOT EXECUTED
40057558: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
handle->dirty = false;
4005755c: c0 2f bf 7c clrb [ %fp + -132 ]
<== NOT EXECUTED
rc = rtems_rfs_buffer_handle_request (fs, &buffer, block, false);
40057560: 96 10 20 00 clr %o3
<== NOT EXECUTED
handle->bnum = 0;
40057564: c0 27 bf 80 clr [ %fp + -128 ]
<== NOT EXECUTED
40057568: 92 07 bf 7c add %fp, -132, %o1
<== NOT EXECUTED
handle->buffer = NULL;
4005756c: c0 27 bf 84 clr [ %fp + -124 ]
<== NOT EXECUTED
40057570: 7f ff e7 86 call 40051388 <rtems_rfs_buffer_handle_request>
<== NOT EXECUTED
40057574: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40057578: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
4005757c: 14 bf ff f4 bg 4005754c <rtems_rfs_symlink_read+0x188>
<== NOT EXECUTED
40057580: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
memcpy (path, data, *length);
40057584: c2 07 bf 84 ld [ %fp + -124 ], %g1
<== NOT EXECUTED
40057588: d2 00 60 1c ld [ %g1 + 0x1c ], %o1
<== NOT EXECUTED
4005758c: d4 07 00 00 ld [ %i4 ], %o2
<== NOT EXECUTED
40057590: 40 00 26 90 call 40060fd0 <memcpy>
<== NOT EXECUTED
40057594: 90 10 00 1a mov %i2, %o0
<== NOT EXECUTED
rtems_rfs_buffer_handle_release (fs, handle);
40057598: 92 07 bf 7c add %fp, -132, %o1
<== NOT EXECUTED
4005759c: 7f ff e8 42 call 400516a4 <rtems_rfs_buffer_handle_release>
<== NOT EXECUTED
400575a0: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rc = rtems_rfs_block_map_close (fs, &map);
400575a4: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
handle->dirty = false;
400575a8: c0 2f bf 7c clrb [ %fp + -132 ]
<== NOT EXECUTED
400575ac: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
handle->bnum = 0;
400575b0: c0 27 bf 80 clr [ %fp + -128 ]
<== NOT EXECUTED
400575b4: 7f ff e3 ba call 4005049c <rtems_rfs_block_map_close>
<== NOT EXECUTED
400575b8: c0 27 bf 84 clr [ %fp + -124 ]
<== NOT EXECUTED
if (rc > 0)
400575bc: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400575c0: 04 bf ff b0 ble 40057480 <rtems_rfs_symlink_read+0xbc>
<== NOT EXECUTED
400575c4: 92 07 bf 88 add %fp, -120, %o1
<== NOT EXECUTED
400575c8: 10 bf ff bf b 400574c4 <rtems_rfs_symlink_read+0x100>
<== NOT EXECUTED
400575cc: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40057fa0 <rtems_rfs_trace>:
bool
rtems_rfs_trace (rtems_rfs_trace_mask mask)
{
bool result = false;
if (mask & rtems_rfs_trace_flags)
40057fa0: 03 10 02 41 sethi %hi(0x40090400), %g1
<== NOT EXECUTED
40057fa4: 84 10 60 50 or %g1, 0x50, %g2 ! 40090450 <rtems_rfs_trace_flags>
<== NOT EXECUTED
40057fa8: c2 00 60 50 ld [ %g1 + 0x50 ], %g1
<== NOT EXECUTED
40057fac: c4 00 a0 04 ld [ %g2 + 4 ], %g2
<== NOT EXECUTED
40057fb0: 90 08 40 08 and %g1, %o0, %o0
<== NOT EXECUTED
40057fb4: 92 08 80 09 and %g2, %o1, %o1
<== NOT EXECUTED
40057fb8: 90 12 00 09 or %o0, %o1, %o0
<== NOT EXECUTED
result = true;
return result;
}
40057fbc: 80 a0 00 08 cmp %g0, %o0
<== NOT EXECUTED
40057fc0: 81 c3 e0 08 retl
<== NOT EXECUTED
40057fc4: 90 40 20 00 addx %g0, 0, %o0
<== NOT EXECUTED
40056d0c <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)
{
40056d0c: 9d e3 bf 50 save %sp, -176, %sp
<== NOT EXECUTED
rtems_rfs_inode_handle target_inode;
uint16_t links;
bool dir;
int rc;
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056d10: 90 10 20 00 clr %o0
<== NOT EXECUTED
40056d14: 40 00 04 a3 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056d18: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40056d1c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056d20: 12 80 00 30 bne 40056de0 <rtems_rfs_unlink+0xd4>
<== NOT EXECUTED
40056d24: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
printf ("rtems-rfs: unlink: parent(%" PRIu32 ") -X-> (%" PRIu32 ")\n", parent, target);
rc = rtems_rfs_inode_open (fs, target, &target_inode, true);
40056d28: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40056d2c: 94 07 bf d8 add %fp, -40, %o2
<== NOT EXECUTED
40056d30: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40056d34: 7f ff fd 1b call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40056d38: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc)
40056d3c: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40056d40: 12 80 00 26 bne 40056dd8 <rtems_rfs_unlink+0xcc>
<== NOT EXECUTED
40056d44: c2 07 bf e4 ld [ %fp + -28 ], %g1
<== NOT EXECUTED
40056d48: 05 00 00 3c sethi %hi(0xf000), %g2
<== NOT EXECUTED
return rtems_rfs_read_u16 (&handle->node->mode);
40056d4c: c2 08 60 02 ldub [ %g1 + 2 ], %g1
<== NOT EXECUTED
40056d50: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
40056d54: 82 08 40 02 and %g1, %g2, %g1
<== NOT EXECUTED
/*
* If a directory process the unlink mode.
*/
dir = RTEMS_RFS_S_ISDIR (rtems_rfs_inode_get_mode (&target_inode));
if (dir)
40056d58: 05 00 00 10 sethi %hi(0x4000), %g2
<== NOT EXECUTED
40056d5c: 80 a0 40 02 cmp %g1, %g2
<== NOT EXECUTED
40056d60: 12 80 00 0d bne 40056d94 <rtems_rfs_unlink+0x88>
<== NOT EXECUTED
40056d64: a1 28 60 10 sll %g1, 0x10, %l0
<== NOT EXECUTED
{
switch (dir_mode)
40056d68: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
40056d6c: 02 80 00 72 be 40056f34 <rtems_rfs_unlink+0x228>
<== NOT EXECUTED
40056d70: 80 a7 20 01 cmp %i4, 1
<== NOT EXECUTED
40056d74: 12 80 00 09 bne 40056d98 <rtems_rfs_unlink+0x8c>
<== NOT EXECUTED
40056d78: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
printf ("rtems-rfs: link is a directory\n");
rtems_rfs_inode_close (fs, &target_inode);
return EISDIR;
case rtems_rfs_unlink_dir_if_empty:
rc = rtems_rfs_dir_empty (fs, &target_inode);
40056d7c: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056d80: 7f ff ef d6 call 40052cd8 <rtems_rfs_dir_empty>
<== NOT EXECUTED
40056d84: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40056d88: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40056d8c: 14 80 00 81 bg 40056f90 <rtems_rfs_unlink+0x284>
<== NOT EXECUTED
40056d90: 90 10 20 00 clr %o0
<== NOT EXECUTED
default:
break;
}
}
rc = rtems_rfs_inode_open (fs, parent, &parent_inode, true);
40056d94: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
40056d98: 94 07 bf b0 add %fp, -80, %o2
<== NOT EXECUTED
40056d9c: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40056da0: 7f ff fd 00 call 400561a0 <rtems_rfs_inode_open>
<== NOT EXECUTED
40056da4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc)
40056da8: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40056dac: 02 80 00 13 be 40056df8 <rtems_rfs_unlink+0xec>
<== NOT EXECUTED
40056db0: 96 10 00 1b mov %i3, %o3
<== NOT EXECUTED
{
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056db4: 90 10 20 00 clr %o0
<== NOT EXECUTED
40056db8: 40 00 04 7a call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056dbc: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40056dc0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056dc4: 12 80 00 6a bne 40056f6c <rtems_rfs_unlink+0x260>
<== NOT EXECUTED
40056dc8: 01 00 00 00 nop
<== NOT EXECUTED
if (rc > 0)
{
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
printf ("rtems-rfs: link: parent inode-close failed: %d: %s\n",
rc, strerror (rc));
rtems_rfs_inode_close (fs, &target_inode);
40056dcc: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056dd0: 7f ff fd 6b call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056dd4: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
printf ("rtems-rfs: link: target inode-close failed: %d: %s\n",
rc, strerror (rc));
return rc;
}
40056dd8: 81 c7 e0 08 ret
<== NOT EXECUTED
40056ddc: 91 e8 00 1d restore %g0, %i5, %o0
<== NOT EXECUTED
printf ("rtems-rfs: unlink: parent(%" PRIu32 ") -X-> (%" PRIu32 ")\n", parent, target);
40056de0: 92 10 00 19 mov %i1, %o1
<== NOT EXECUTED
40056de4: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056de8: 7f ff 93 d8 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056dec: 90 12 21 28 or %o0, 0x128, %o0 ! 40088128 <MSDOS_DOT_NAME+0x2000>
<== NOT EXECUTED
rc = rtems_rfs_inode_open (fs, target, &target_inode, true);
40056df0: 10 bf ff cf b 40056d2c <rtems_rfs_unlink+0x20>
<== NOT EXECUTED
40056df4: 96 10 20 01 mov 1, %o3
<== NOT EXECUTED
rc = rtems_rfs_dir_del_entry (fs, &parent_inode, target, doff);
40056df8: 94 10 00 1a mov %i2, %o2
<== NOT EXECUTED
40056dfc: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40056e00: 7f ff ed b7 call 400524dc <rtems_rfs_dir_del_entry>
<== NOT EXECUTED
40056e04: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40056e08: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40056e0c: 14 80 00 34 bg 40056edc <rtems_rfs_unlink+0x1d0>
<== NOT EXECUTED
40056e10: c2 07 bf e4 ld [ %fp + -28 ], %g1
<== NOT EXECUTED
links = rtems_rfs_read_u16 (&handle->node->links);
40056e14: fa 08 40 00 ldub [ %g1 ], %i5
<== NOT EXECUTED
40056e18: c2 08 60 01 ldub [ %g1 + 1 ], %g1
<== NOT EXECUTED
40056e1c: bb 2f 60 08 sll %i5, 8, %i5
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056e20: 90 10 20 00 clr %o0
<== NOT EXECUTED
40056e24: ba 17 40 01 or %i5, %g1, %i5
<== NOT EXECUTED
if (links == 0xffff)
40056e28: b9 2f 60 10 sll %i5, 0x10, %i4
<== NOT EXECUTED
40056e2c: 03 00 00 3f sethi %hi(0xfc00), %g1
<== NOT EXECUTED
40056e30: b7 37 20 10 srl %i4, 0x10, %i3
<== NOT EXECUTED
40056e34: 82 10 63 ff or %g1, 0x3ff, %g1
<== NOT EXECUTED
40056e38: 80 a6 c0 01 cmp %i3, %g1
<== NOT EXECUTED
40056e3c: 02 80 00 69 be 40056fe0 <rtems_rfs_unlink+0x2d4>
<== NOT EXECUTED
40056e40: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40056e44: 40 00 04 57 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056e48: 01 00 00 00 nop
<== NOT EXECUTED
40056e4c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056e50: 12 80 00 5e bne 40056fc8 <rtems_rfs_unlink+0x2bc>
<== NOT EXECUTED
40056e54: 94 10 00 1b mov %i3, %o2
<== NOT EXECUTED
if (links > 1)
40056e58: b9 37 20 10 srl %i4, 0x10, %i4
<== NOT EXECUTED
40056e5c: 80 a7 20 01 cmp %i4, 1
<== NOT EXECUTED
40056e60: 08 80 00 6a bleu 40057008 <rtems_rfs_unlink+0x2fc>
<== NOT EXECUTED
40056e64: c4 07 bf e4 ld [ %fp + -28 ], %g2
<== NOT EXECUTED
links--;
40056e68: ba 07 7f ff add %i5, -1, %i5
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->links, links);
40056e6c: 83 2f 60 10 sll %i5, 0x10, %g1
<== NOT EXECUTED
40056e70: 83 30 60 18 srl %g1, 0x18, %g1
<== NOT EXECUTED
40056e74: c2 28 80 00 stb %g1, [ %g2 ]
<== NOT EXECUTED
40056e78: c2 07 bf e4 ld [ %fp + -28 ], %g1
<== NOT EXECUTED
40056e7c: fa 28 60 01 stb %i5, [ %g1 + 1 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40056e80: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40056e84: c2 2f bf e8 stb %g1, [ %fp + -24 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_time_stamp_now (&parent_inode, true, true);
40056e88: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
40056e8c: 92 10 20 01 mov 1, %o1
<== NOT EXECUTED
40056e90: 7f ff fd ab call 4005653c <rtems_rfs_inode_time_stamp_now>
<== NOT EXECUTED
40056e94: 90 07 bf b0 add %fp, -80, %o0
<== NOT EXECUTED
if (rc > 0)
40056e98: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40056e9c: 04 80 00 79 ble 40057080 <rtems_rfs_unlink+0x374>
<== NOT EXECUTED
40056ea0: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056ea4: 40 00 04 3f call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056ea8: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40056eac: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056eb0: 22 80 00 19 be,a 40056f14 <rtems_rfs_unlink+0x208>
<== NOT EXECUTED
40056eb4: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
printf ("rtems-rfs: link: inode-time-stamp failed: %d: %s\n",
40056eb8: 40 00 35 ba call 400645a0 <strerror>
<== NOT EXECUTED
40056ebc: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40056ec0: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40056ec4: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40056ec8: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056ecc: 7f ff 93 9f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056ed0: 90 12 22 50 or %o0, 0x250, %o0 ! 40088250 <MSDOS_DOT_NAME+0x2128>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &parent_inode);
40056ed4: 10 80 00 10 b 40056f14 <rtems_rfs_unlink+0x208>
<== NOT EXECUTED
40056ed8: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056edc: 90 10 20 00 clr %o0
<== NOT EXECUTED
40056ee0: 40 00 04 30 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056ee4: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40056ee8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056eec: 02 80 00 0a be 40056f14 <rtems_rfs_unlink+0x208>
<== NOT EXECUTED
40056ef0: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
printf ("rtems-rfs: unlink: dir-del failed: %d: %s\n",
40056ef4: 40 00 35 ab call 400645a0 <strerror>
<== NOT EXECUTED
40056ef8: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40056efc: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40056f00: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40056f04: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056f08: 7f ff 93 90 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056f0c: 90 12 21 c8 or %o0, 0x1c8, %o0 ! 400881c8 <MSDOS_DOT_NAME+0x20a0>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &parent_inode);
40056f10: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40056f14: 7f ff fd 1a call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056f18: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
40056f1c: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056f20: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40056f24: 7f ff fd 16 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056f28: b0 10 00 1d mov %i5, %i0
<== NOT EXECUTED
}
40056f2c: 81 c7 e0 08 ret
<== NOT EXECUTED
40056f30: 81 e8 00 00 restore
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056f34: 90 10 20 00 clr %o0
<== NOT EXECUTED
40056f38: 40 00 04 1a call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056f3c: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40056f40: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056f44: 02 80 00 06 be 40056f5c <rtems_rfs_unlink+0x250>
<== NOT EXECUTED
40056f48: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: link is a directory\n");
40056f4c: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056f50: 7f ff 93 8d call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
40056f54: 90 12 21 58 or %o0, 0x158, %o0 ! 40088158 <MSDOS_DOT_NAME+0x2030>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
40056f58: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
40056f5c: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
40056f60: 7f ff fd 07 call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40056f64: ba 10 20 15 mov 0x15, %i5
<== NOT EXECUTED
return EISDIR;
40056f68: 30 bf ff 9c b,a 40056dd8 <rtems_rfs_unlink+0xcc>
<== NOT EXECUTED
printf ("rtems-rfs: link: inode-open failed: %d: %s\n",
40056f6c: 40 00 35 8d call 400645a0 <strerror>
<== NOT EXECUTED
40056f70: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40056f74: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40056f78: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40056f7c: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056f80: 7f ff 93 72 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056f84: 90 12 21 98 or %o0, 0x198, %o0 ! 40088198 <MSDOS_DOT_NAME+0x2070>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
40056f88: 10 bf ff 92 b 40056dd0 <rtems_rfs_unlink+0xc4>
<== NOT EXECUTED
40056f8c: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056f90: 40 00 04 04 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056f94: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40056f98: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056f9c: 22 bf ff 8d be,a 40056dd0 <rtems_rfs_unlink+0xc4>
<== NOT EXECUTED
40056fa0: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: dir-empty: %d: %s\n", rc, strerror (rc));
40056fa4: 40 00 35 7f call 400645a0 <strerror>
<== NOT EXECUTED
40056fa8: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40056fac: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40056fb0: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40056fb4: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056fb8: 7f ff 93 64 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056fbc: 90 12 21 78 or %o0, 0x178, %o0 ! 40088178 <MSDOS_DOT_NAME+0x2050>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
40056fc0: 10 bf ff 84 b 40056dd0 <rtems_rfs_unlink+0xc4>
<== NOT EXECUTED
40056fc4: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: unlink: target:%" PRIu32 " links:%u\n", target, links);
40056fc8: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40056fcc: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056fd0: 7f ff 93 5e call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40056fd4: 90 12 21 f8 or %o0, 0x1f8, %o0 ! 400881f8 <MSDOS_DOT_NAME+0x20d0>
<== NOT EXECUTED
if (links > 1)
40056fd8: 10 bf ff a1 b 40056e5c <rtems_rfs_unlink+0x150>
<== NOT EXECUTED
40056fdc: b9 37 20 10 srl %i4, 0x10, %i4
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40056fe0: 40 00 03 f0 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40056fe4: 01 00 00 00 nop
<== NOT EXECUTED
40056fe8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
40056fec: 02 80 00 08 be 4005700c <rtems_rfs_unlink+0x300>
<== NOT EXECUTED
40056ff0: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: unlink: target:%" PRIu32 " links:%u\n", target, links);
40056ff4: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40056ff8: 94 10 20 00 clr %o2
<== NOT EXECUTED
40056ffc: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
40057000: 7f ff 93 52 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40057004: 90 12 21 f8 or %o0, 0x1f8, %o0
<== NOT EXECUTED
rc = rtems_rfs_inode_delete (fs, &target_inode);
40057008: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
4005700c: 7f ff fd 02 call 40056414 <rtems_rfs_inode_delete>
<== NOT EXECUTED
40057010: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
40057014: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40057018: 14 80 00 41 bg 4005711c <rtems_rfs_unlink+0x410>
<== NOT EXECUTED
4005701c: 03 10 00 00 sethi %hi(0x40000000), %g1
<== NOT EXECUTED
if (dir)
40057020: 80 a4 00 01 cmp %l0, %g1
<== NOT EXECUTED
40057024: 12 bf ff 9a bne 40056e8c <rtems_rfs_unlink+0x180>
<== NOT EXECUTED
40057028: 94 10 20 01 mov 1, %o2
<== NOT EXECUTED
4005702c: c4 07 bf bc ld [ %fp + -68 ], %g2
<== NOT EXECUTED
links = rtems_rfs_read_u16 (&handle->node->links);
40057030: c6 08 a0 01 ldub [ %g2 + 1 ], %g3
<== NOT EXECUTED
40057034: c2 08 80 00 ldub [ %g2 ], %g1
<== NOT EXECUTED
40057038: 83 28 60 08 sll %g1, 8, %g1
<== NOT EXECUTED
4005703c: 82 10 40 03 or %g1, %g3, %g1
<== NOT EXECUTED
if (links == 0xffff)
40057040: 07 00 00 3f sethi %hi(0xfc00), %g3
<== NOT EXECUTED
40057044: 86 10 e3 ff or %g3, 0x3ff, %g3 ! ffff <_Configuration_Interrupt_stack_size+0xefff>
<== NOT EXECUTED
40057048: 80 a0 40 03 cmp %g1, %g3
<== NOT EXECUTED
4005704c: 02 80 00 43 be 40057158 <rtems_rfs_unlink+0x44c>
<== NOT EXECUTED
40057050: 80 a0 60 01 cmp %g1, 1
<== NOT EXECUTED
if (links > 1)
40057054: 08 80 00 05 bleu 40057068 <rtems_rfs_unlink+0x35c>
<== NOT EXECUTED
40057058: 86 10 20 00 clr %g3
<== NOT EXECUTED
links--;
4005705c: 82 00 7f ff add %g1, -1, %g1
<== NOT EXECUTED
40057060: 87 28 60 10 sll %g1, 0x10, %g3
<== NOT EXECUTED
40057064: 87 30 e0 18 srl %g3, 0x18, %g3
<== NOT EXECUTED
rtems_rfs_write_u16 (&handle->node->links, links);
40057068: c6 28 80 00 stb %g3, [ %g2 ]
<== NOT EXECUTED
4005706c: c4 07 bf bc ld [ %fp + -68 ], %g2
<== NOT EXECUTED
40057070: c2 28 a0 01 stb %g1, [ %g2 + 1 ]
<== NOT EXECUTED
rtems_rfs_buffer_mark_dirty (&handle->buffer);
40057074: 82 10 20 01 mov 1, %g1
<== NOT EXECUTED
40057078: 10 bf ff 84 b 40056e88 <rtems_rfs_unlink+0x17c>
<== NOT EXECUTED
4005707c: c2 2f bf c0 stb %g1, [ %fp + -64 ]
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &parent_inode);
40057080: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
40057084: 7f ff fc be call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
40057088: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if (rc > 0)
4005708c: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
40057090: 04 80 00 10 ble 400570d0 <rtems_rfs_unlink+0x3c4>
<== NOT EXECUTED
40057094: 90 10 20 00 clr %o0
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
40057098: 40 00 03 c2 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
4005709c: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
400570a0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400570a4: 22 bf ff 4b be,a 40056dd0 <rtems_rfs_unlink+0xc4>
<== NOT EXECUTED
400570a8: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
printf ("rtems-rfs: link: parent inode-close failed: %d: %s\n",
400570ac: 40 00 35 3d call 400645a0 <strerror>
<== NOT EXECUTED
400570b0: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
400570b4: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
400570b8: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
400570bc: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
400570c0: 7f ff 93 22 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
400570c4: 90 12 22 88 or %o0, 0x288, %o0 ! 40088288 <MSDOS_DOT_NAME+0x2160>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &target_inode);
400570c8: 10 bf ff 42 b 40056dd0 <rtems_rfs_unlink+0xc4>
<== NOT EXECUTED
400570cc: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
rc = rtems_rfs_inode_close (fs, &target_inode);
400570d0: 92 07 bf d8 add %fp, -40, %o1
<== NOT EXECUTED
400570d4: 7f ff fc aa call 4005637c <rtems_rfs_inode_close>
<== NOT EXECUTED
400570d8: 90 10 00 18 mov %i0, %o0
<== NOT EXECUTED
if ((rc > 0) && rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
400570dc: ba 92 20 00 orcc %o0, 0, %i5
<== NOT EXECUTED
400570e0: 04 bf ff 3e ble 40056dd8 <rtems_rfs_unlink+0xcc>
<== NOT EXECUTED
400570e4: 90 10 20 00 clr %o0
<== NOT EXECUTED
400570e8: 40 00 03 ae call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
400570ec: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
400570f0: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400570f4: 02 bf ff 39 be 40056dd8 <rtems_rfs_unlink+0xcc>
<== NOT EXECUTED
400570f8: 01 00 00 00 nop
<== NOT EXECUTED
printf ("rtems-rfs: link: target inode-close failed: %d: %s\n",
400570fc: 40 00 35 29 call 400645a0 <strerror>
<== NOT EXECUTED
40057100: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
40057104: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40057108: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
4005710c: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40057110: 7f ff 93 0e call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
40057114: 90 12 22 c0 or %o0, 0x2c0, %o0 ! 400882c0 <MSDOS_DOT_NAME+0x2198>
<== NOT EXECUTED
40057118: 30 bf ff 30 b,a 40056dd8 <rtems_rfs_unlink+0xcc>
<== NOT EXECUTED
if (rtems_rfs_trace (RTEMS_RFS_TRACE_UNLINK))
4005711c: 90 10 20 00 clr %o0
<== NOT EXECUTED
40057120: 40 00 03 a0 call 40057fa0 <rtems_rfs_trace>
<== NOT EXECUTED
40057124: 13 00 80 00 sethi %hi(0x2000000), %o1
<== NOT EXECUTED
40057128: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4005712c: 22 bf ff 7a be,a 40056f14 <rtems_rfs_unlink+0x208>
<== NOT EXECUTED
40057130: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
printf ("rtems-rfs: unlink: inode-del failed: %d: %s\n",
40057134: 40 00 35 1b call 400645a0 <strerror>
<== NOT EXECUTED
40057138: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
4005713c: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
40057140: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
40057144: 11 10 02 20 sethi %hi(0x40088000), %o0
<== NOT EXECUTED
40057148: 7f ff 93 00 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4005714c: 90 12 22 20 or %o0, 0x220, %o0 ! 40088220 <MSDOS_DOT_NAME+0x20f8>
<== NOT EXECUTED
rtems_rfs_inode_close (fs, &parent_inode);
40057150: 10 bf ff 71 b 40056f14 <rtems_rfs_unlink+0x208>
<== NOT EXECUTED
40057154: 92 07 bf b0 add %fp, -80, %o1
<== NOT EXECUTED
if (links == 0xffff)
40057158: 82 10 20 00 clr %g1
<== NOT EXECUTED
4005715c: 10 bf ff c3 b 40057068 <rtems_rfs_unlink+0x35c>
<== NOT EXECUTED
40057160: 86 10 20 00 clr %g3
<== NOT EXECUTED
4003b480 <rtems_shell_debugrfs>:
printf (" -l: The debugger command list.\n");
}
int
rtems_shell_debugrfs (int argc, char *argv[])
{
4003b480: 9d e3 be f0 save %sp, -272, %sp
<== NOT EXECUTED
const rtems_rfs_shell_cmd table[] =
4003b484: 94 10 20 3c mov 0x3c, %o2
<== NOT EXECUTED
4003b488: 13 10 02 0a sethi %hi(0x40082800), %o1
<== NOT EXECUTED
4003b48c: 90 07 bf c4 add %fp, -60, %o0
<== NOT EXECUTED
4003b490: 40 00 96 d0 call 40060fd0 <memcpy>
<== NOT EXECUTED
4003b494: 92 12 60 0c or %o1, 0xc, %o1
<== NOT EXECUTED
};
int arg;
int t;
for (arg = 1; arg < argc; arg++)
4003b498: 80 a6 20 01 cmp %i0, 1
<== NOT EXECUTED
4003b49c: 04 80 00 48 ble 4003b5bc <rtems_shell_debugrfs+0x13c>
<== NOT EXECUTED
4003b4a0: b6 10 00 18 mov %i0, %i3
<== NOT EXECUTED
{
if (argv[arg][0] != '-')
4003b4a4: fa 06 60 04 ld [ %i1 + 4 ], %i5
<== NOT EXECUTED
4003b4a8: c2 4f 40 00 ldsb [ %i5 ], %g1
<== NOT EXECUTED
4003b4ac: 80 a0 60 2d cmp %g1, 0x2d
<== NOT EXECUTED
4003b4b0: 02 80 00 2b be 4003b55c <rtems_shell_debugrfs+0xdc>
<== NOT EXECUTED
4003b4b4: 80 a6 20 02 cmp %i0, 2
<== NOT EXECUTED
printf ("error: unknown option: %s\n", argv[arg]);
return 1;
}
}
if ((argc - arg) < 2)
4003b4b8: 02 80 00 41 be 4003b5bc <rtems_shell_debugrfs+0x13c>
<== NOT EXECUTED
4003b4bc: 92 07 bf 50 add %fp, -176, %o1
<== NOT EXECUTED
rc = statvfs (path, &sb);
4003b4c0: 40 00 1f 99 call 40043324 <statvfs>
<== NOT EXECUTED
4003b4c4: 90 10 00 1d mov %i5, %o0
<== NOT EXECUTED
if (rc < 0)
4003b4c8: b8 92 20 00 orcc %o0, 0, %i4
<== NOT EXECUTED
4003b4cc: 06 80 00 75 bl 4003b6a0 <rtems_shell_debugrfs+0x220>
<== NOT EXECUTED
4003b4d0: c4 07 bf 7c ld [ %fp + -132 ], %g2
<== NOT EXECUTED
if (sb.f_fsid != RTEMS_RFS_SB_MAGIC)
4003b4d4: 03 0a 02 48 sethi %hi(0x28092000), %g1
<== NOT EXECUTED
4003b4d8: 82 10 60 01 or %g1, 1, %g1 ! 28092001 <RAM_SIZE+0x27c92001>
<== NOT EXECUTED
4003b4dc: 80 a0 80 01 cmp %g2, %g1
<== NOT EXECUTED
4003b4e0: 12 80 00 69 bne 4003b684 <rtems_shell_debugrfs+0x204>
<== NOT EXECUTED
4003b4e4: 94 10 20 18 mov 0x18, %o2
<== NOT EXECUTED
const rtems_filesystem_location_info_t *currentloc =
4003b4e8: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4003b4ec: 7f ff 47 55 call 4000d240 <rtems_filesystem_eval_path_start>
<== NOT EXECUTED
4003b4f0: 90 07 bf 8c add %fp, -116, %o0
<== NOT EXECUTED
*fs = rtems_rfs_rtems_pathloc_dev (currentloc);
4003b4f4: c2 02 20 14 ld [ %o0 + 0x14 ], %g1
<== NOT EXECUTED
4003b4f8: e0 00 60 08 ld [ %g1 + 8 ], %l0
<== NOT EXECUTED
rtems_filesystem_eval_path_cleanup (&ctx);
4003b4fc: 7f ff 47 9b call 4000d368 <rtems_filesystem_eval_path_cleanup>
<== NOT EXECUTED
4003b500: 90 07 bf 8c add %fp, -116, %o0
<== NOT EXECUTED
printf ("error: you need at least a path and command, try %s -h\n", argv[0]);
else
{
rtems_rfs_file_system* fs;
if (rtems_rfs_get_fs (argv[arg], &fs) == 0)
4003b504: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
4003b508: 12 80 00 13 bne 4003b554 <rtems_shell_debugrfs+0xd4>
<== NOT EXECUTED
4003b50c: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
{
for (t = 0; t < (sizeof (table) / sizeof (const rtems_rfs_shell_cmd)); t++)
if (strcmp (argv[arg + 1], table[t].name) == 0)
4003b510: f4 06 60 08 ld [ %i1 + 8 ], %i2
<== NOT EXECUTED
4003b514: ba 07 bf c4 add %fp, -60, %i5
<== NOT EXECUTED
4003b518: d2 07 40 00 ld [ %i5 ], %o1
<== NOT EXECUTED
4003b51c: 40 00 a1 fe call 40063d14 <strcmp>
<== NOT EXECUTED
4003b520: 90 10 00 1a mov %i2, %o0
<== NOT EXECUTED
4003b524: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4003b528: 02 80 00 4d be 4003b65c <rtems_shell_debugrfs+0x1dc>
<== NOT EXECUTED
4003b52c: 83 2f 20 01 sll %i4, 1, %g1
<== NOT EXECUTED
for (t = 0; t < (sizeof (table) / sizeof (const rtems_rfs_shell_cmd)); t++)
4003b530: b8 07 20 01 inc %i4
<== NOT EXECUTED
4003b534: 80 a7 20 05 cmp %i4, 5
<== NOT EXECUTED
4003b538: 12 bf ff f8 bne 4003b518 <rtems_shell_debugrfs+0x98>
<== NOT EXECUTED
4003b53c: ba 07 60 0c add %i5, 0xc, %i5
<== NOT EXECUTED
return table[t].handler (fs, argc - 2, argv + 2);
printf ("error: command not found: %s\n", argv[arg + 1]);
4003b540: 92 10 00 1a mov %i2, %o1
<== NOT EXECUTED
4003b544: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
}
}
return 1;
4003b548: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: command not found: %s\n", argv[arg + 1]);
4003b54c: 40 00 01 ff call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b550: 90 12 22 a0 or %o0, 0x2a0, %o0
<== NOT EXECUTED
}
4003b554: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b558: 81 e8 00 00 restore
<== NOT EXECUTED
switch (argv[arg][1])
4003b55c: c2 4f 60 01 ldsb [ %i5 + 1 ], %g1
<== NOT EXECUTED
4003b560: 80 a0 60 68 cmp %g1, 0x68
<== NOT EXECUTED
4003b564: 02 80 00 1d be 4003b5d8 <rtems_shell_debugrfs+0x158>
<== NOT EXECUTED
4003b568: 80 a0 60 6c cmp %g1, 0x6c
<== NOT EXECUTED
4003b56c: 12 80 00 36 bne 4003b644 <rtems_shell_debugrfs+0x1c4>
<== NOT EXECUTED
4003b570: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
printf ("%s: commands are:\n", argv[0]);
4003b574: d2 06 40 00 ld [ %i1 ], %o1
<== NOT EXECUTED
4003b578: 11 10 02 01 sethi %hi(0x40080400), %o0
<== NOT EXECUTED
4003b57c: 39 10 02 09 sethi %hi(0x40082400), %i4
<== NOT EXECUTED
4003b580: 90 12 22 10 or %o0, 0x210, %o0
<== NOT EXECUTED
4003b584: ba 07 bf c4 add %fp, -60, %i5
<== NOT EXECUTED
4003b588: 40 00 01 f0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b58c: b6 10 00 1e mov %fp, %i3
<== NOT EXECUTED
printf (" %s\t\t%s\n", table[t].name, table[t].help);
4003b590: b8 17 21 f8 or %i4, 0x1f8, %i4
<== NOT EXECUTED
4003b594: d4 07 60 08 ld [ %i5 + 8 ], %o2
<== NOT EXECUTED
4003b598: d2 07 40 00 ld [ %i5 ], %o1
<== NOT EXECUTED
4003b59c: 40 00 01 eb call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b5a0: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
4003b5a4: ba 07 60 0c add %i5, 0xc, %i5
<== NOT EXECUTED
for (t = 0; t < (sizeof (table) / sizeof (const rtems_rfs_shell_cmd)); t++)
4003b5a8: 80 a7 40 1b cmp %i5, %i3
<== NOT EXECUTED
4003b5ac: 32 bf ff fb bne,a 4003b598 <rtems_shell_debugrfs+0x118>
<== NOT EXECUTED
4003b5b0: d4 07 60 08 ld [ %i5 + 8 ], %o2
<== NOT EXECUTED
return 0;
4003b5b4: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b5b8: 91 e8 20 00 restore %g0, 0, %o0
<== NOT EXECUTED
printf ("error: you need at least a path and command, try %s -h\n", argv[0]);
4003b5bc: d2 06 40 00 ld [ %i1 ], %o1
<== NOT EXECUTED
4003b5c0: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
return 1;
4003b5c4: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: you need at least a path and command, try %s -h\n", argv[0]);
4003b5c8: 40 00 01 e0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b5cc: 90 12 22 08 or %o0, 0x208, %o0
<== NOT EXECUTED
4003b5d0: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b5d4: 81 e8 00 00 restore
<== NOT EXECUTED
rtems_rfs_shell_usage (argv[0]);
4003b5d8: fa 06 40 00 ld [ %i1 ], %i5
<== NOT EXECUTED
printf ("%s: RFS debugger\n", arg);
4003b5dc: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4003b5e0: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
4003b5e4: 40 00 01 d9 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b5e8: 90 12 21 18 or %o0, 0x118, %o0 ! 40082518 <rtems_rfs_rtems_eval_config+0x60c>
<== NOT EXECUTED
printf (" %s [-hl] <path> <command>\n", arg);
4003b5ec: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4003b5f0: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
4003b5f4: 40 00 01 d5 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b5f8: 90 12 21 30 or %o0, 0x130, %o0 ! 40082530 <rtems_rfs_rtems_eval_config+0x624>
<== NOT EXECUTED
printf (" where:\n");
4003b5fc: 11 10 02 01 sethi %hi(0x40080400), %o0
<== NOT EXECUTED
4003b600: 40 00 01 e1 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b604: 90 12 21 88 or %o0, 0x188, %o0 ! 40080588 <rtems_rtc_shell_usage+0x100>
<== NOT EXECUTED
printf (" path: Path to the mounted RFS file system\n");
4003b608: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
4003b60c: 40 00 01 de call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b610: 90 12 21 50 or %o0, 0x150, %o0 ! 40082550 <rtems_rfs_rtems_eval_config+0x644>
<== NOT EXECUTED
printf (" command: A debugger command. See -l for a list plus help.\n");
4003b614: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
4003b618: 40 00 01 db call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b61c: 90 12 21 88 or %o0, 0x188, %o0 ! 40082588 <rtems_rfs_rtems_eval_config+0x67c>
<== NOT EXECUTED
printf (" -h: This help\n");
4003b620: 11 10 02 01 sethi %hi(0x40080400), %o0
<== NOT EXECUTED
4003b624: 40 00 01 d8 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b628: 90 12 21 d8 or %o0, 0x1d8, %o0 ! 400805d8 <rtems_rtc_shell_usage+0x150>
<== NOT EXECUTED
printf (" -l: The debugger command list.\n");
4003b62c: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
return 0;
4003b630: b0 10 20 00 clr %i0
<== NOT EXECUTED
printf (" -l: The debugger command list.\n");
4003b634: 40 00 01 d4 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b638: 90 12 21 c8 or %o0, 0x1c8, %o0
<== NOT EXECUTED
4003b63c: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b640: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("error: unknown option: %s\n", argv[arg]);
4003b644: 11 10 02 01 sethi %hi(0x40080400), %o0
<== NOT EXECUTED
return 1;
4003b648: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: unknown option: %s\n", argv[arg]);
4003b64c: 40 00 01 bf call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b650: 90 12 22 38 or %o0, 0x238, %o0
<== NOT EXECUTED
return 1;
4003b654: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b658: 81 e8 00 00 restore
<== NOT EXECUTED
return table[t].handler (fs, argc - 2, argv + 2);
4003b65c: 82 00 40 1c add %g1, %i4, %g1
<== NOT EXECUTED
4003b660: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
4003b664: 82 07 80 01 add %fp, %g1, %g1
<== NOT EXECUTED
4003b668: c2 00 7f c8 ld [ %g1 + -56 ], %g1
<== NOT EXECUTED
4003b66c: 94 06 60 08 add %i1, 8, %o2
<== NOT EXECUTED
4003b670: 92 06 ff fe add %i3, -2, %o1
<== NOT EXECUTED
4003b674: 9f c0 40 00 call %g1
<== NOT EXECUTED
4003b678: 90 10 00 10 mov %l0, %o0
<== NOT EXECUTED
4003b67c: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b680: 91 e8 00 08 restore %g0, %o0, %o0
<== NOT EXECUTED
printf ("error: path '%s' is not on an RFS file system\n", path);
4003b684: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4003b688: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
return 1;
4003b68c: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: path '%s' is not on an RFS file system\n", path);
4003b690: 40 00 01 ae call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b694: 90 12 22 70 or %o0, 0x270, %o0
<== NOT EXECUTED
4003b698: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b69c: 81 e8 00 00 restore
<== NOT EXECUTED
path, errno, strerror (errno));
4003b6a0: 40 00 84 9d call 4005c914 <__errno>
<== NOT EXECUTED
4003b6a4: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
4003b6a8: 40 00 84 9b call 4005c914 <__errno>
<== NOT EXECUTED
4003b6ac: f8 02 00 00 ld [ %o0 ], %i4
<== NOT EXECUTED
printf ("error: cannot statvfs path: %s: (%d) %s\n",
4003b6b0: 40 00 a3 bc call 400645a0 <strerror>
<== NOT EXECUTED
4003b6b4: d0 02 00 00 ld [ %o0 ], %o0
<== NOT EXECUTED
4003b6b8: 94 10 00 1c mov %i4, %o2
<== NOT EXECUTED
4003b6bc: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
4003b6c0: 92 10 00 1d mov %i5, %o1
<== NOT EXECUTED
4003b6c4: 11 10 02 09 sethi %hi(0x40082400), %o0
<== NOT EXECUTED
4003b6c8: 40 00 01 a0 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b6cc: 90 12 22 40 or %o0, 0x240, %o0 ! 40082640 <rtems_rfs_rtems_eval_config+0x734>
<== NOT EXECUTED
4003b6d0: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b6d4: 81 e8 00 00 restore
<== NOT EXECUTED
4003b790 <rtems_shell_rfs_format>:
int
rtems_shell_rfs_format (int argc, char* argv[])
{
4003b790: 9d e3 bf 88 save %sp, -120, %sp
<== NOT EXECUTED
rtems_rfs_format_config config;
const char* driver = NULL;
int arg;
memset (&config, 0, sizeof (rtems_rfs_format_config));
4003b794: c0 27 bf e8 clr [ %fp + -24 ]
<== NOT EXECUTED
for (arg = 1; arg < argc; arg++)
4003b798: ba 10 20 01 mov 1, %i5
<== NOT EXECUTED
memset (&config, 0, sizeof (rtems_rfs_format_config));
4003b79c: c0 27 bf ec clr [ %fp + -20 ]
<== NOT EXECUTED
const char* driver = NULL;
4003b7a0: b8 10 20 00 clr %i4
<== NOT EXECUTED
memset (&config, 0, sizeof (rtems_rfs_format_config));
4003b7a4: c0 27 bf f0 clr [ %fp + -16 ]
<== NOT EXECUTED
for (arg = 1; arg < argc; arg++)
4003b7a8: 80 a6 20 01 cmp %i0, 1
<== NOT EXECUTED
memset (&config, 0, sizeof (rtems_rfs_format_config));
4003b7ac: c0 27 bf f4 clr [ %fp + -12 ]
<== NOT EXECUTED
4003b7b0: c0 27 bf f8 clr [ %fp + -8 ]
<== NOT EXECUTED
for (arg = 1; arg < argc; arg++)
4003b7b4: 04 80 00 5a ble 4003b91c <rtems_shell_rfs_format+0x18c>
<== NOT EXECUTED
4003b7b8: c0 27 bf fc clr [ %fp + -4 ]
<== NOT EXECUTED
{
if (argv[arg][0] == '-')
{
switch (argv[arg][1])
4003b7bc: 35 10 00 ed sethi %hi(0x4003b400), %i2
<== NOT EXECUTED
}
config.group_inodes = strtoul (argv[arg], 0, 0);
break;
case 'I':
config.initialise_inodes = true;
4003b7c0: b6 10 20 01 mov 1, %i3
<== NOT EXECUTED
switch (argv[arg][1])
4003b7c4: 10 80 00 08 b 4003b7e4 <rtems_shell_rfs_format+0x54>
<== NOT EXECUTED
4003b7c8: b4 16 a2 d8 or %i2, 0x2d8, %i2
<== NOT EXECUTED
return 1;
}
}
else
{
if (!driver)
4003b7cc: 12 80 00 5a bne 4003b934 <rtems_shell_rfs_format+0x1a4>
<== NOT EXECUTED
4003b7d0: b8 10 00 09 mov %o1, %i4
<== NOT EXECUTED
for (arg = 1; arg < argc; arg++)
4003b7d4: ba 07 60 01 inc %i5
<== NOT EXECUTED
4003b7d8: 80 a6 00 1d cmp %i0, %i5
<== NOT EXECUTED
4003b7dc: 04 80 00 16 ble 4003b834 <rtems_shell_rfs_format+0xa4>
<== NOT EXECUTED
4003b7e0: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
if (argv[arg][0] == '-')
4003b7e4: 85 2f 60 02 sll %i5, 2, %g2
<== NOT EXECUTED
4003b7e8: d2 06 40 02 ld [ %i1 + %g2 ], %o1
<== NOT EXECUTED
4003b7ec: c2 4a 40 00 ldsb [ %o1 ], %g1
<== NOT EXECUTED
4003b7f0: 80 a0 60 2d cmp %g1, 0x2d
<== NOT EXECUTED
4003b7f4: 12 bf ff f6 bne 4003b7cc <rtems_shell_rfs_format+0x3c>
<== NOT EXECUTED
4003b7f8: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
switch (argv[arg][1])
4003b7fc: c2 0a 60 01 ldub [ %o1 + 1 ], %g1
<== NOT EXECUTED
4003b800: 82 00 7f b7 add %g1, -73, %g1
<== NOT EXECUTED
4003b804: 82 08 60 ff and %g1, 0xff, %g1
<== NOT EXECUTED
4003b808: 80 a0 60 2d cmp %g1, 0x2d
<== NOT EXECUTED
4003b80c: 18 80 00 3e bgu 4003b904 <rtems_shell_rfs_format+0x174>
<== NOT EXECUTED
4003b810: 83 28 60 02 sll %g1, 2, %g1
<== NOT EXECUTED
4003b814: c2 06 80 01 ld [ %i2 + %g1 ], %g1
<== NOT EXECUTED
4003b818: 81 c0 40 00 jmp %g1
<== NOT EXECUTED
4003b81c: 01 00 00 00 nop
<== NOT EXECUTED
for (arg = 1; arg < argc; arg++)
4003b820: ba 07 60 01 inc %i5
<== NOT EXECUTED
4003b824: 80 a6 00 1d cmp %i0, %i5
<== NOT EXECUTED
4003b828: 14 bf ff ef bg 4003b7e4 <rtems_shell_rfs_format+0x54>
<== NOT EXECUTED
4003b82c: f6 2f bf fd stb %i3, [ %fp + -3 ]
<== NOT EXECUTED
return 1;
}
}
}
if (!driver) {
4003b830: 80 a7 20 00 cmp %i4, 0
<== NOT EXECUTED
4003b834: 02 80 00 3a be 4003b91c <rtems_shell_rfs_format+0x18c>
<== NOT EXECUTED
4003b838: 92 07 bf e8 add %fp, -24, %o1
<== NOT EXECUTED
printf ("error: no driver name provided\n");
return 1;
}
if (rtems_rfs_format (driver, &config) < 0)
4003b83c: 90 10 00 1c mov %i4, %o0
<== NOT EXECUTED
4003b840: 40 00 64 16 call 40054898 <rtems_rfs_format>
<== NOT EXECUTED
4003b844: b0 10 20 00 clr %i0
<== NOT EXECUTED
4003b848: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4003b84c: 06 80 00 40 bl 4003b94c <rtems_shell_rfs_format+0x1bc>
<== NOT EXECUTED
4003b850: 01 00 00 00 nop
<== NOT EXECUTED
driver, strerror (errno));
return 1;
}
return 0;
}
4003b854: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b858: 81 e8 00 00 restore
<== NOT EXECUTED
arg++;
4003b85c: ba 07 60 01 inc %i5
<== NOT EXECUTED
if (arg >= argc)
4003b860: 80 a6 00 1d cmp %i0, %i5
<== NOT EXECUTED
4003b864: 04 80 00 57 ble 4003b9c0 <rtems_shell_rfs_format+0x230>
<== NOT EXECUTED
4003b868: 84 06 40 02 add %i1, %g2, %g2
<== NOT EXECUTED
config.block_size = strtoul (argv[arg], 0, 0);
4003b86c: d0 00 a0 04 ld [ %g2 + 4 ], %o0
<== NOT EXECUTED
4003b870: 94 10 20 00 clr %o2
<== NOT EXECUTED
4003b874: 40 00 ad 08 call 40066c94 <strtoul>
<== NOT EXECUTED
4003b878: 92 10 20 00 clr %o1
<== NOT EXECUTED
break;
4003b87c: 10 bf ff d6 b 4003b7d4 <rtems_shell_rfs_format+0x44>
<== NOT EXECUTED
4003b880: d0 27 bf e8 st %o0, [ %fp + -24 ]
<== NOT EXECUTED
arg++;
4003b884: ba 07 60 01 inc %i5
<== NOT EXECUTED
if (arg >= argc)
4003b888: 80 a6 00 1d cmp %i0, %i5
<== NOT EXECUTED
4003b88c: 04 80 00 47 ble 4003b9a8 <rtems_shell_rfs_format+0x218>
<== NOT EXECUTED
4003b890: 84 06 40 02 add %i1, %g2, %g2
<== NOT EXECUTED
config.inode_overhead = strtoul (argv[arg], 0, 0);
4003b894: d0 00 a0 04 ld [ %g2 + 4 ], %o0
<== NOT EXECUTED
4003b898: 94 10 20 00 clr %o2
<== NOT EXECUTED
4003b89c: 40 00 ac fe call 40066c94 <strtoul>
<== NOT EXECUTED
4003b8a0: 92 10 20 00 clr %o1
<== NOT EXECUTED
break;
4003b8a4: 10 bf ff cc b 4003b7d4 <rtems_shell_rfs_format+0x44>
<== NOT EXECUTED
4003b8a8: d0 27 bf f4 st %o0, [ %fp + -12 ]
<== NOT EXECUTED
arg++;
4003b8ac: ba 07 60 01 inc %i5
<== NOT EXECUTED
if (arg >= argc)
4003b8b0: 80 a6 00 1d cmp %i0, %i5
<== NOT EXECUTED
4003b8b4: 04 80 00 37 ble 4003b990 <rtems_shell_rfs_format+0x200>
<== NOT EXECUTED
4003b8b8: 84 06 40 02 add %i1, %g2, %g2
<== NOT EXECUTED
config.group_inodes = strtoul (argv[arg], 0, 0);
4003b8bc: d0 00 a0 04 ld [ %g2 + 4 ], %o0
<== NOT EXECUTED
4003b8c0: 94 10 20 00 clr %o2
<== NOT EXECUTED
4003b8c4: 40 00 ac f4 call 40066c94 <strtoul>
<== NOT EXECUTED
4003b8c8: 92 10 20 00 clr %o1
<== NOT EXECUTED
break;
4003b8cc: 10 bf ff c2 b 4003b7d4 <rtems_shell_rfs_format+0x44>
<== NOT EXECUTED
4003b8d0: d0 27 bf f0 st %o0, [ %fp + -16 ]
<== NOT EXECUTED
arg++;
4003b8d4: ba 07 60 01 inc %i5
<== NOT EXECUTED
if (arg >= argc)
4003b8d8: 80 a6 00 1d cmp %i0, %i5
<== NOT EXECUTED
4003b8dc: 04 80 00 27 ble 4003b978 <rtems_shell_rfs_format+0x1e8>
<== NOT EXECUTED
4003b8e0: 84 06 40 02 add %i1, %g2, %g2
<== NOT EXECUTED
config.group_blocks = strtoul (argv[arg], 0, 0);
4003b8e4: d0 00 a0 04 ld [ %g2 + 4 ], %o0
<== NOT EXECUTED
4003b8e8: 94 10 20 00 clr %o2
<== NOT EXECUTED
4003b8ec: 40 00 ac ea call 40066c94 <strtoul>
<== NOT EXECUTED
4003b8f0: 92 10 20 00 clr %o1
<== NOT EXECUTED
break;
4003b8f4: 10 bf ff b8 b 4003b7d4 <rtems_shell_rfs_format+0x44>
<== NOT EXECUTED
4003b8f8: d0 27 bf ec st %o0, [ %fp + -20 ]
<== NOT EXECUTED
break;
4003b8fc: 10 bf ff b6 b 4003b7d4 <rtems_shell_rfs_format+0x44>
<== NOT EXECUTED
4003b900: f6 2f bf fc stb %i3, [ %fp + -4 ]
<== NOT EXECUTED
printf ("error: invalid option: %s\n", argv[arg]);
4003b904: 11 10 01 ee sethi %hi(0x4007b800), %o0
<== NOT EXECUTED
return 1;
4003b908: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: invalid option: %s\n", argv[arg]);
4003b90c: 40 00 01 0f call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b910: 90 12 21 78 or %o0, 0x178, %o0
<== NOT EXECUTED
return 1;
4003b914: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b918: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("error: no driver name provided\n");
4003b91c: 11 10 02 0a sethi %hi(0x40082800), %o0
<== NOT EXECUTED
return 1;
4003b920: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: no driver name provided\n");
4003b924: 40 00 01 18 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b928: 90 12 20 48 or %o0, 0x48, %o0
<== NOT EXECUTED
return 1;
4003b92c: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b930: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("error: only one driver name allowed: %s\n", argv[arg]);
4003b934: 11 10 01 ee sethi %hi(0x4007b800), %o0
<== NOT EXECUTED
return 1;
4003b938: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: only one driver name allowed: %s\n", argv[arg]);
4003b93c: 40 00 01 03 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b940: 90 12 21 98 or %o0, 0x198, %o0
<== NOT EXECUTED
return 1;
4003b944: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b948: 81 e8 00 00 restore
<== NOT EXECUTED
driver, strerror (errno));
4003b94c: 40 00 83 f2 call 4005c914 <__errno>
<== NOT EXECUTED
4003b950: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: format of %s failed: %s\n",
4003b954: 40 00 a3 13 call 400645a0 <strerror>
<== NOT EXECUTED
4003b958: d0 02 00 00 ld [ %o0 ], %o0
<== NOT EXECUTED
4003b95c: 92 10 00 1c mov %i4, %o1
<== NOT EXECUTED
4003b960: 94 10 00 08 mov %o0, %o2
<== NOT EXECUTED
4003b964: 11 10 02 0a sethi %hi(0x40082800), %o0
<== NOT EXECUTED
4003b968: 40 00 00 f8 call 4003bd48 <__wrap_printf>
<== NOT EXECUTED
4003b96c: 90 12 21 28 or %o0, 0x128, %o0 ! 40082928 <rtems_rfs_rtems_eval_config+0xa1c>
<== NOT EXECUTED
}
4003b970: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b974: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("error: group block count needs an argument\n");
4003b978: 11 10 02 0a sethi %hi(0x40082800), %o0
<== NOT EXECUTED
return 1;
4003b97c: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: group block count needs an argument\n");
4003b980: 40 00 01 01 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b984: 90 12 20 90 or %o0, 0x90, %o0
<== NOT EXECUTED
return 1;
4003b988: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b98c: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("error: group inode count needs an argument\n");
4003b990: 11 10 02 0a sethi %hi(0x40082800), %o0
<== NOT EXECUTED
return 1;
4003b994: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: group inode count needs an argument\n");
4003b998: 40 00 00 fb call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b99c: 90 12 20 c0 or %o0, 0xc0, %o0
<== NOT EXECUTED
return 1;
4003b9a0: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b9a4: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("error: inode percentage overhead needs an argument\n");
4003b9a8: 11 10 02 0a sethi %hi(0x40082800), %o0
<== NOT EXECUTED
return 1;
4003b9ac: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: inode percentage overhead needs an argument\n");
4003b9b0: 40 00 00 f5 call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b9b4: 90 12 20 f0 or %o0, 0xf0, %o0
<== NOT EXECUTED
return 1;
4003b9b8: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b9bc: 81 e8 00 00 restore
<== NOT EXECUTED
printf ("error: block size needs an argument\n");
4003b9c0: 11 10 02 0a sethi %hi(0x40082800), %o0
<== NOT EXECUTED
return 1;
4003b9c4: b0 10 20 01 mov 1, %i0
<== NOT EXECUTED
printf ("error: block size needs an argument\n");
4003b9c8: 40 00 00 ef call 4003bd84 <__wrap_puts>
<== NOT EXECUTED
4003b9cc: 90 12 20 68 or %o0, 0x68, %o0
<== NOT EXECUTED
return 1;
4003b9d0: 81 c7 e0 08 ret
<== NOT EXECUTED
4003b9d4: 81 e8 00 00 restore
<== NOT EXECUTED