RTEMS-5
Annotated Report
Wed Aug 22 17:36:07 2018

4000893c <rtems_fsmount>:
                                            
 )
                                                                   
/*-------------------------------------------------------------------------*\

  | Return Value:                                                             |

  |    0, if success, -1 and errno if failed                                  |

  \*=========================================================================*/

{
                                                                    
4000893c:	9d e3 bf a0 	save  %sp, -96, %sp
                           <== NOT EXECUTED
          rc = tmp_rc;
                                               
        }
                                                            
      }
                                                              
      else {
                                                         
        if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_OK)) {
     
          fprintf(stdout,"fsmount: mounting of \"%s\" to"
            
40008940:	27 10 01 f3 	sethi  %hi(0x4007cc00), %l3
                   <== NOT EXECUTED
{
                                                                    
40008944:	ba 10 00 18 	mov  %i0, %i5
                                 <== NOT EXECUTED
          fprintf(stdout,"fsmount: mounting of \"%s\" to"
            
40008948:	25 10 01 f2 	sethi  %hi(0x4007c800), %l2
                   <== NOT EXECUTED
          fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",

4000894c:	23 10 01 f2 	sethi  %hi(0x4007c800), %l1
                   <== NOT EXECUTED
  bool terminate = false;
                                            
40008950:	b8 10 20 00 	clr  %i4
                                      <== NOT EXECUTED
  size_t fstab_idx = 0;
                                              
40008954:	b6 10 20 00 	clr  %i3
                                      <== NOT EXECUTED
  int rc = 0;
                                                        
40008958:	b0 10 20 00 	clr  %i0
                                      <== NOT EXECUTED
          fprintf(stdout,"fsmount: mounting of \"%s\" to"
            
4000895c:	a6 14 e0 18 	or  %l3, 0x18, %l3
                            <== NOT EXECUTED
          fprintf(stdout,"fsmount: mounting of \"%s\" to"
            
40008960:	a4 14 a3 e8 	or  %l2, 0x3e8, %l2
                           <== NOT EXECUTED
          fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",

40008964:	a2 14 63 b0 	or  %l1, 0x3b0, %l1
                           <== NOT EXECUTED
         (fstab_idx < fstab_count)) {
                                
40008968:	80 a6 c0 19 	cmp  %i3, %i1
                                 <== NOT EXECUTED
  while (!terminate &&
                                               
4000896c:	b8 1f 20 01 	xor  %i4, 1, %i4
                              <== NOT EXECUTED
         (fstab_idx < fstab_count)) {
                                
40008970:	82 40 20 00 	addx  %g0, 0, %g1
                             <== NOT EXECUTED
  while (!terminate &&
                                               
40008974:	82 08 40 1c 	and  %g1, %i4, %g1
                            <== NOT EXECUTED
40008978:	80 a0 60 00 	cmp  %g1, 0
                                   <== NOT EXECUTED
4000897c:	02 80 00 21 	be  40008a00 <rtems_fsmount+0xc4>
             <== NOT EXECUTED
40008980:	b8 10 00 01 	mov  %g1, %i4
                                 <== NOT EXECUTED
      tmp_rc = rtems_mkdir(fstab_ptr->target, S_IRWXU | S_IRWXG | S_IRWXO);

40008984:	d0 07 60 04 	ld  [ %i5 + 4 ], %o0
                          <== NOT EXECUTED
40008988:	40 00 10 0a 	call  4000c9b0 <rtems_mkdir>
                  <== NOT EXECUTED
4000898c:	92 10 21 ff 	mov  0x1ff, %o1
                               <== NOT EXECUTED
      if (tmp_rc != 0) {
                                             
40008990:	a0 92 20 00 	orcc  %o0, 0, %l0
                             <== NOT EXECUTED
40008994:	32 80 00 21 	bne,a   40008a18 <rtems_fsmount+0xdc>
         <== NOT EXECUTED
40008998:	c2 17 60 10 	lduh  [ %i5 + 0x10 ], %g1
                     <== NOT EXECUTED
      tmp_rc = mount(fstab_ptr->source,
                              
4000899c:	d6 07 60 0c 	ld  [ %i5 + 0xc ], %o3
                        <== NOT EXECUTED
400089a0:	d4 07 60 08 	ld  [ %i5 + 8 ], %o2
                          <== NOT EXECUTED
400089a4:	d2 07 60 04 	ld  [ %i5 + 4 ], %o1
                          <== NOT EXECUTED
400089a8:	d0 07 40 00 	ld  [ %i5 ], %o0
                              <== NOT EXECUTED
400089ac:	40 00 0d 54 	call  4000befc <mount>
                        <== NOT EXECUTED
400089b0:	98 10 20 00 	clr  %o4
                                      <== NOT EXECUTED
        if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
 
400089b4:	c2 17 60 10 	lduh  [ %i5 + 0x10 ], %g1
                     <== NOT EXECUTED
      if (tmp_rc != 0) {
                                             
400089b8:	80 a2 20 00 	cmp  %o0, 0
                                   <== NOT EXECUTED
400089bc:	02 80 00 24 	be  40008a4c <rtems_fsmount+0x110>
            <== NOT EXECUTED
400089c0:	a0 10 00 08 	mov  %o0, %l0
                                 <== NOT EXECUTED
        if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
 
400089c4:	80 88 60 04 	btst  4, %g1
                                  <== NOT EXECUTED
400089c8:	12 80 00 3a 	bne  40008ab0 <rtems_fsmount+0x174>
           <== NOT EXECUTED
400089cc:	01 00 00 00 	nop 
                                          <== NOT EXECUTED
        if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_FAILED)) {
  
400089d0:	c2 17 60 12 	lduh  [ %i5 + 0x12 ], %g1
                     <== NOT EXECUTED
400089d4:	80 88 60 04 	btst  4, %g1
                                  <== NOT EXECUTED
400089d8:	22 80 00 18 	be,a   40008a38 <rtems_fsmount+0xfc>
          <== NOT EXECUTED
400089dc:	ba 07 60 14 	add  %i5, 0x14, %i5
                           <== NOT EXECUTED
         (fstab_idx < fstab_count)) {
                                
400089e0:	80 a6 c0 19 	cmp  %i3, %i1
                                 <== NOT EXECUTED
  while (!terminate &&
                                               
400089e4:	b8 1f 20 01 	xor  %i4, 1, %i4
                              <== NOT EXECUTED
         (fstab_idx < fstab_count)) {
                                
400089e8:	82 40 20 00 	addx  %g0, 0, %g1
                             <== NOT EXECUTED
        if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {

400089ec:	b0 10 00 10 	mov  %l0, %i0
                                 <== NOT EXECUTED
  while (!terminate &&
                                               
400089f0:	82 08 40 1c 	and  %g1, %i4, %g1
                            <== NOT EXECUTED
400089f4:	80 a0 60 00 	cmp  %g1, 0
                                   <== NOT EXECUTED
400089f8:	12 bf ff e3 	bne  40008984 <rtems_fsmount+0x48>
            <== NOT EXECUTED
400089fc:	b8 10 00 01 	mov  %g1, %i4
                                 <== NOT EXECUTED
    if (!terminate) {
                                                
      fstab_ptr++;
                                                   
      fstab_idx++;
                                                   
    }
                                                                
  }
                                                                  
  if (fail_idx != NULL) {
                                            
40008a00:	80 a6 a0 00 	cmp  %i2, 0
                                   <== NOT EXECUTED
40008a04:	02 80 00 10 	be  40008a44 <rtems_fsmount+0x108>
            <== NOT EXECUTED
40008a08:	01 00 00 00 	nop 
                                          <== NOT EXECUTED
    *fail_idx = fstab_idx;
                                           
40008a0c:	f6 26 80 00 	st  %i3, [ %i2 ]
                              <== NOT EXECUTED
  }
                                                                  
  return rc;
                                                         
40008a10:	81 c7 e0 08 	ret 
                                          <== NOT EXECUTED
40008a14:	81 e8 00 00 	restore 
                                      <== NOT EXECUTED
        if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNTPNT_CRTERR)) {

40008a18:	80 88 60 02 	btst  2, %g1
                                  <== NOT EXECUTED
40008a1c:	12 80 00 17 	bne  40008a78 <rtems_fsmount+0x13c>
           <== NOT EXECUTED
40008a20:	01 00 00 00 	nop 
                                          <== NOT EXECUTED
        if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {

40008a24:	c2 17 60 12 	lduh  [ %i5 + 0x12 ], %g1
                     <== NOT EXECUTED
40008a28:	80 88 60 02 	btst  2, %g1
                                  <== NOT EXECUTED
40008a2c:	12 bf ff ee 	bne  400089e4 <rtems_fsmount+0xa8>
            <== NOT EXECUTED
40008a30:	80 a6 c0 19 	cmp  %i3, %i1
                                 <== NOT EXECUTED
      fstab_ptr++;
                                                   
40008a34:	ba 07 60 14 	add  %i5, 0x14, %i5
                           <== NOT EXECUTED
      fstab_idx++;
                                                   
40008a38:	b6 06 e0 01 	inc  %i3
                                      <== NOT EXECUTED
40008a3c:	10 bf ff cb 	b  40008968 <rtems_fsmount+0x2c>
              <== NOT EXECUTED
40008a40:	b8 10 20 00 	clr  %i4
                                      <== NOT EXECUTED
}
                                                                    
40008a44:	81 c7 e0 08 	ret 
                                          <== NOT EXECUTED
40008a48:	81 e8 00 00 	restore 
                                      <== NOT EXECUTED
        if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_OK)) {
     
40008a4c:	80 88 60 01 	btst  1, %g1
                                  <== NOT EXECUTED
40008a50:	12 80 00 28 	bne  40008af0 <rtems_fsmount+0x1b4>
           <== NOT EXECUTED
40008a54:	01 00 00 00 	nop 
                                          <== NOT EXECUTED
        if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_OK)) {
      
40008a58:	c2 17 60 12 	lduh  [ %i5 + 0x12 ], %g1
                     <== NOT EXECUTED
40008a5c:	80 88 60 01 	btst  1, %g1
                                  <== NOT EXECUTED
40008a60:	12 bf ff c3 	bne  4000896c <rtems_fsmount+0x30>
            <== NOT EXECUTED
40008a64:	80 a6 c0 19 	cmp  %i3, %i1
                                 <== NOT EXECUTED
      fstab_ptr++;
                                                   
40008a68:	ba 07 60 14 	add  %i5, 0x14, %i5
                           <== NOT EXECUTED
      fstab_idx++;
                                                   
40008a6c:	b6 06 e0 01 	inc  %i3
                                      <== NOT EXECUTED
40008a70:	10 bf ff be 	b  40008968 <rtems_fsmount+0x2c>
              <== NOT EXECUTED
40008a74:	b8 10 20 00 	clr  %i4
                                      <== NOT EXECUTED
          fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",

40008a78:	7f ff e8 4c 	call  40002ba8 <__getreent>
                   <== NOT EXECUTED
40008a7c:	01 00 00 00 	nop 
                                          <== NOT EXECUTED
40008a80:	ea 07 60 04 	ld  [ %i5 + 4 ], %l5
                          <== NOT EXECUTED
                  strerror(errno));
                                  
40008a84:	40 01 4f a4 	call  4005c914 <__errno>
                      <== NOT EXECUTED
40008a88:	e8 02 20 08 	ld  [ %o0 + 8 ], %l4
                          <== NOT EXECUTED
          fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",

40008a8c:	40 01 6e c5 	call  400645a0 <strerror>
                     <== NOT EXECUTED
40008a90:	d0 02 00 00 	ld  [ %o0 ], %o0
                              <== NOT EXECUTED
40008a94:	94 10 00 15 	mov  %l5, %o2
                                 <== NOT EXECUTED
40008a98:	96 10 00 08 	mov  %o0, %o3
                                 <== NOT EXECUTED
40008a9c:	92 10 00 11 	mov  %l1, %o1
                                 <== NOT EXECUTED
40008aa0:	40 01 53 6e 	call  4005d858 <fprintf>
                      <== NOT EXECUTED
40008aa4:	90 10 00 14 	mov  %l4, %o0
                                 <== NOT EXECUTED
        if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {

40008aa8:	10 bf ff e0 	b  40008a28 <rtems_fsmount+0xec>
              <== NOT EXECUTED
40008aac:	c2 17 60 12 	lduh  [ %i5 + 0x12 ], %g1
                     <== NOT EXECUTED
          fprintf(stdout,"fsmount: mounting of \"%s\" to"
            
40008ab0:	7f ff e8 3e 	call  40002ba8 <__getreent>
                   <== NOT EXECUTED
40008ab4:	01 00 00 00 	nop 
                                          <== NOT EXECUTED
40008ab8:	ea 07 40 00 	ld  [ %i5 ], %l5
                              <== NOT EXECUTED
40008abc:	e8 02 20 08 	ld  [ %o0 + 8 ], %l4
                          <== NOT EXECUTED
                  strerror(errno));
                                  
40008ac0:	40 01 4f 95 	call  4005c914 <__errno>
                      <== NOT EXECUTED
40008ac4:	ec 07 60 04 	ld  [ %i5 + 4 ], %l6
                          <== NOT EXECUTED
          fprintf(stdout,"fsmount: mounting of \"%s\" to"
            
40008ac8:	40 01 6e b6 	call  400645a0 <strerror>
                     <== NOT EXECUTED
40008acc:	d0 02 00 00 	ld  [ %o0 ], %o0
                              <== NOT EXECUTED
40008ad0:	96 10 00 16 	mov  %l6, %o3
                                 <== NOT EXECUTED
40008ad4:	98 10 00 08 	mov  %o0, %o4
                                 <== NOT EXECUTED
40008ad8:	94 10 00 15 	mov  %l5, %o2
                                 <== NOT EXECUTED
40008adc:	92 10 00 12 	mov  %l2, %o1
                                 <== NOT EXECUTED
40008ae0:	40 01 53 5e 	call  4005d858 <fprintf>
                      <== NOT EXECUTED
40008ae4:	90 10 00 14 	mov  %l4, %o0
                                 <== NOT EXECUTED
        if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_FAILED)) {
  
40008ae8:	10 bf ff bb 	b  400089d4 <rtems_fsmount+0x98>
              <== NOT EXECUTED
40008aec:	c2 17 60 12 	lduh  [ %i5 + 0x12 ], %g1
                     <== NOT EXECUTED
          fprintf(stdout,"fsmount: mounting of \"%s\" to"
            
40008af0:	7f ff e8 2e 	call  40002ba8 <__getreent>
                   <== NOT EXECUTED
40008af4:	01 00 00 00 	nop 
                                          <== NOT EXECUTED
40008af8:	d6 07 60 04 	ld  [ %i5 + 4 ], %o3
                          <== NOT EXECUTED
40008afc:	d4 07 40 00 	ld  [ %i5 ], %o2
                              <== NOT EXECUTED
40008b00:	d0 02 20 08 	ld  [ %o0 + 8 ], %o0
                          <== NOT EXECUTED
40008b04:	40 01 53 55 	call  4005d858 <fprintf>
                      <== NOT EXECUTED
40008b08:	92 10 00 13 	mov  %l3, %o1
                                 <== NOT EXECUTED
        if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_OK)) {
      
40008b0c:	10 bf ff d4 	b  40008a5c <rtems_fsmount+0x120>
             <== NOT EXECUTED
40008b10:	c2 17 60 12 	lduh  [ %i5 + 0x12 ], %g1
                     <== NOT EXECUTED