RTEMS-5
Annotated Report
Fri Aug 10 14:20:03 2018

40002d5c <null_initialize>:
                                          
rtems_device_driver null_initialize(
                                 
  rtems_device_major_number major,
                                   
  rtems_device_minor_number minor RTEMS_UNUSED,
                      
  void *pargp RTEMS_UNUSED
                                           
)
                                                                    
{
                                                                    
40002d5c:	9d e3 bf a0 	save  %sp, -96, %sp
                           
  rtems_device_driver status;
                                        

                                                                     
  if ( !initialized ) {
                                              
40002d60:	03 10 00 4c 	sethi  %hi(0x40013000), %g1
                   
40002d64:	c4 48 61 a4 	ldsb  [ %g1 + 0x1a4 ], %g2	! 400131a4 <initialized>

40002d68:	80 a0 a0 00 	cmp  %g2, 0
                                   
40002d6c:	02 80 00 04 	be  40002d7c <null_initialize+0x20>
           <== ALWAYS TAKEN
40002d70:	84 10 20 01 	mov  1, %g2
                                   

                                                                     
    NULL_major = major;
                                              
  }
                                                                  

                                                                     
  return RTEMS_SUCCESSFUL;
                                           
}
                                                                    
40002d74:	81 c7 e0 08 	ret 
                                          <== NOT EXECUTED
40002d78:	91 e8 20 00 	restore  %g0, 0, %o0
                          <== NOT EXECUTED
    status = rtems_io_register_name(
                                 
40002d7c:	94 10 20 00 	clr  %o2
                                      
    initialized = 1;
                                                 
40002d80:	c4 28 61 a4 	stb  %g2, [ %g1 + 0x1a4 ]
                     
    status = rtems_io_register_name(
                                 
40002d84:	92 10 00 18 	mov  %i0, %o1
                                 
40002d88:	11 10 00 3d 	sethi  %hi(0x4000f400), %o0
                   
40002d8c:	40 00 05 fa 	call  40004574 <rtems_io_register_name>
       
40002d90:	90 12 21 d0 	or  %o0, 0x1d0, %o0	! 4000f5d0 <_rodata_start>

    if (status != RTEMS_SUCCESSFUL)
                                  
40002d94:	80 a2 20 00 	cmp  %o0, 0
                                   
40002d98:	12 80 00 05 	bne  40002dac <null_initialize+0x50>
          <== ALWAYS TAKEN
40002d9c:	03 10 00 4d 	sethi  %hi(0x40013400), %g1
                   
    NULL_major = major;
                                              
40002da0:	f0 20 63 54 	st  %i0, [ %g1 + 0x354 ]	! 40013754 <NULL_major>
<== NOT EXECUTED
}
                                                                    
40002da4:	81 c7 e0 08 	ret 
                                          <== NOT EXECUTED
40002da8:	91 e8 20 00 	restore  %g0, 0, %o0
                          <== NOT EXECUTED
      rtems_fatal_error_occurred(status);
                            
40002dac:	40 00 0e 4b 	call  400066d8 <rtems_fatal_error_occurred>
   
40002db0:	01 00 00 00 	nop 
                                          
40002db4:	01 00 00 00 	nop 
                                          <== NOT EXECUTED

                                                                     

40002ef0 <null_write>: void *pargp ) { rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *) pargp; if ( rw_args )
40002ef0:	80 a2 a0 00 	cmp  %o2, 0
                                   
40002ef4:	02 80 00 04 	be  40002f04 <null_write+0x14>
                <== NEVER TAKEN
40002ef8:	01 00 00 00 	nop 
                                          
    rw_args->bytes_moved = rw_args->count;
                           
40002efc:	c2 02 a0 14 	ld  [ %o2 + 0x14 ], %g1
                       
40002f00:	c2 22 a0 1c 	st  %g1, [ %o2 + 0x1c ]
                       

                                                                     
  return NULL_SUCCESSFUL;
                                            
}
                                                                    
40002f04:	81 c3 e0 08 	retl 
                                         
40002f08:	90 10 20 00 	clr  %o0