=============================================================================== 40003d84 : rtems_device_driver null_initialize( rtems_device_major_number major, rtems_device_minor_number minor RTEMS_UNUSED, void *pargp RTEMS_UNUSED ) { 40003d84: 9d e3 bf a0 save %sp, -96, %sp rtems_device_driver status; if ( !initialized ) { 40003d88: 03 10 00 60 sethi %hi(0x40018000), %g1 40003d8c: c4 48 60 3c ldsb [ %g1 + 0x3c ], %g2 ! 4001803c 40003d90: 80 a0 a0 00 cmp %g2, 0 40003d94: 02 80 00 04 be 40003da4 40003d98: 84 10 20 01 mov 1, %g2 NULL_major = major; } return RTEMS_SUCCESSFUL; } 40003d9c: 81 c7 e0 08 ret 40003da0: 91 e8 20 00 restore %g0, 0, %o0 status = rtems_io_register_name( 40003da4: 94 10 20 00 clr %o2 initialized = 1; 40003da8: c4 28 60 3c stb %g2, [ %g1 + 0x3c ] status = rtems_io_register_name( 40003dac: 92 10 00 18 mov %i0, %o1 40003db0: 11 10 00 51 sethi %hi(0x40014400), %o0 40003db4: 40 00 06 23 call 40005640 40003db8: 90 12 22 78 or %o0, 0x278, %o0 ! 40014678 <_rodata_start+0x878> if (status != RTEMS_SUCCESSFUL) 40003dbc: 80 a2 20 00 cmp %o0, 0 40003dc0: 12 80 00 05 bne 40003dd4 <== NEVER TAKEN 40003dc4: 03 10 00 61 sethi %hi(0x40018400), %g1 NULL_major = major; 40003dc8: f0 20 62 ec st %i0, [ %g1 + 0x2ec ] ! 400186ec } 40003dcc: 81 c7 e0 08 ret 40003dd0: 91 e8 20 00 restore %g0, 0, %o0 rtems_fatal_error_occurred(status); 40003dd4: 40 00 1a 3f call 4000a6d0 <== NOT EXECUTED 40003dd8: 01 00 00 00 nop <== NOT EXECUTED 40003ddc: 01 00 00 00 nop <== NOT EXECUTED =============================================================================== 40003df8 : void *pargp ) { rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *) pargp; if ( rw_args ) 40003df8: 80 a2 a0 00 cmp %o2, 0 40003dfc: 02 80 00 04 be 40003e0c <== ALWAYS TAKEN 40003e00: 01 00 00 00 nop rw_args->bytes_moved = rw_args->count; 40003e04: c2 02 a0 14 ld [ %o2 + 0x14 ], %g1 <== NOT EXECUTED 40003e08: c2 22 a0 1c st %g1, [ %o2 + 0x1c ] <== NOT EXECUTED return NULL_SUCCESSFUL; } 40003e0c: 81 c3 e0 08 retl 40003e10: 90 10 20 00 clr %o0