read_insn_microblaze (bfd_vma memaddr, 

		      struct disassemble_info *info,

		      struct op_code_struct **opr)

{

  unsigned char       ibytes[4];

  int                 status;

  struct op_code_struct * op;

  unsigned long inst;



  status = info->read_memory_func (memaddr, ibytes, 4, info);



  if (status != 0) 

    {

      info->memory_error_func (status, memaddr, info);

      return 0;

    }



  if (info->endian == BFD_ENDIAN_BIG)

    inst = (ibytes[0] << 24) | (ibytes[1] << 16) | (ibytes[2] << 8) | ibytes[3];

  else if (info->endian == BFD_ENDIAN_LITTLE)

    inst = (ibytes[3] << 24) | (ibytes[2] << 16) | (ibytes[1] << 8) | ibytes[0];

  else

    abort ();



  /* Just a linear search of the table.  */

  for (op = opcodes; op->name != 0; op ++)

    if (op->bit_sequence == (inst & op->opcode_mask))

      break;



  *opr = op;

  return inst;

}

read_insn_microblaze (bfd_vma memaddr, 

		      struct disassemble_info *info,

		      struct op_code_struct **opr)

{

  unsigned char       ibytes[4];

  int                 status;

  struct op_code_struct * op;

  unsigned long inst;



  status = info->read_memory_func (memaddr, ibytes, 4, info);



  if (status != 0) 

    {

      info->memory_error_func (status, memaddr, info);

      return 0;

    }



  if (info->endian == BFD_ENDIAN_BIG)

    inst = (ibytes[0] << 24) | (ibytes[1] << 16) | (ibytes[2] << 8) | ibytes[3];

  else if (info->endian == BFD_ENDIAN_LITTLE)

    inst = (ibytes[3] << 24) | (ibytes[2] << 16) | (ibytes[1] << 8) | ibytes[0];

  else

    abort ();



  

  for (op = opcodes; op->name != 0; op ++)

    if (op->bit_sequence == (inst & op->opcode_mask))

      break;



  *opr = op;

  return inst;

}

FUNC_0 (bfd_vma VAR_0, 

		      struct disassemble_info *VAR_1,

		      struct op_code_struct **VAR_2)

{

  unsigned char       VAR_3[4];

  int                 VAR_4;

  struct op_code_struct * VAR_5;

  unsigned long VAR_6;



  VAR_4 = VAR_1->read_memory_func (VAR_0, VAR_3, 4, VAR_1);



  if (VAR_4 != 0) 

    {

      VAR_1->memory_error_func (VAR_4, VAR_0, VAR_1);

      return 0;

    }



  if (VAR_1->endian == BFD_ENDIAN_BIG)

    VAR_6 = (VAR_3[0] << 24) | (VAR_3[1] << 16) | (VAR_3[2] << 8) | VAR_3[3];

  else if (VAR_1->endian == BFD_ENDIAN_LITTLE)

    VAR_6 = (VAR_3[3] << 24) | (VAR_3[2] << 16) | (VAR_3[1] << 8) | VAR_3[0];

  else

    abort ();



  

  for (VAR_5 = opcodes; VAR_5->name != 0; VAR_5 ++)

    if (VAR_5->bit_sequence == (VAR_6 & VAR_5->opcode_mask))

      break;



  *VAR_2 = VAR_5;

  return VAR_6;

}

FUNC_0 (bfd_vma VAR_0,
struct disassemble_info *VAR_1,
struct op_code_struct **VAR_2)
{ unsigned char       VAR_3[4]; int                 VAR_4; struct op_code_struct * VAR_5; unsigned long VAR_6; VAR_4 = VAR_1->read_memory_func (VAR_0, VAR_3, 4, VAR_1); if (VAR_4 != 0)
{ VAR_1->memory_error_func (VAR_4, VAR_0, VAR_1); return 0; } if (VAR_1->endian == BFD_ENDIAN_BIG)
VAR_6 = (VAR_3[0] << 24) | (VAR_3[1] << 16) | (VAR_3[2] << 8) | VAR_3[3]; else if (VAR_1->endian == BFD_ENDIAN_LITTLE)
VAR_6 = (VAR_3[3] << 24) | (VAR_3[2] << 16) | (VAR_3[1] << 8) | VAR_3[0]; else
abort (); for (VAR_5 = opcodes; VAR_5->name != 0; VAR_5 ++) if (VAR_5->bit_sequence == (VAR_6 & VAR_5->opcode_mask))
break; *VAR_2 = VAR_5; return VAR_6; }