case OPRND_TYPE_FCONSTANT:
{
int shift = oprnd->shift;
- char ibytes[8];
+ bfd_byte ibytes[8];
int status;
bfd_vma addr;
int nbytes;
else
nbytes = 4;
- status = dis_info.info->read_memory_func (addr, (bfd_byte *)ibytes,
+ status = dis_info.info->read_memory_func (addr, ibytes,
nbytes, dis_info.info);
if (status != 0)
/* Address out of bounds. -> lrw rx, [pc, 0ffset]. */
sprintf (buf, "[pc, %d]\t// from address pool at %x", (int)value,
(unsigned int)addr);
- else
- {
- dis_info.value = addr;
- value = csky_chars_to_number ((unsigned char *)ibytes, 4);
- }
-
- if (oprnd->type == OPRND_TYPE_FCONSTANT)
+ else if (oprnd->type == OPRND_TYPE_FCONSTANT)
{
double f;
}
else
{
+ dis_info.value = addr;
dis_info.need_output_symbol = 1;
- sprintf (buf, "0x%x", (unsigned int)value);
+ value = csky_chars_to_number (ibytes, 4);
+ sprintf (buf, "0x%x", (unsigned int) value);
}
strcat (str, buf);