Fix formatting in coff-x86_64.c

* coff-x86_64.c (coff_amd64_reloc): Fix formatting.
This commit is contained in:
H.J. Lu 2015-12-18 08:15:27 -08:00
parent ec70be9f61
commit c9f203207d
2 changed files with 53 additions and 47 deletions

View File

@ -1,3 +1,7 @@
2015-12-18 H.J. Lu <hongjiu.lu@intel.com>
* coff-x86_64.c (coff_amd64_reloc): Fix formatting.
2015-12-18 Nick Clifton <nickc@redhat.com>
* coff-i386.c (coff_i386_reloc): Fix formatting.

View File

@ -138,59 +138,61 @@ coff_amd64_reloc (bfd *abfd,
#define DOIT(x) \
x = ((x & ~howto->dst_mask) | (((x & howto->src_mask) + diff) & howto->dst_mask))
if (diff != 0)
{
reloc_howto_type *howto = reloc_entry->howto;
unsigned char *addr = (unsigned char *) data + reloc_entry->address;
if (diff != 0)
{
reloc_howto_type *howto = reloc_entry->howto;
unsigned char *addr = (unsigned char *) data + reloc_entry->address;
/* FIXME: We do not have an end address for data, so we cannot
accurately range check any addresses computed against it.
cf: PR binutils/17512: file: 1085-1761-0.004.
For now we do the best that we can. */
if (addr < (unsigned char *) data || addr > ((unsigned char *) data) + input_section->size)
/* FIXME: We do not have an end address for data, so we cannot
accurately range check any addresses computed against it.
cf: PR binutils/17512: file: 1085-1761-0.004.
For now we do the best that we can. */
if (addr < (unsigned char *) data
|| addr > ((unsigned char *) data) + input_section->size)
{
bfd_set_error (bfd_error_bad_value);
return bfd_reloc_notsupported;
}
switch (howto->size)
{
case 0:
{
bfd_set_error (bfd_error_bad_value);
return bfd_reloc_notsupported;
char x = bfd_get_8 (abfd, addr);
DOIT (x);
bfd_put_8 (abfd, x, addr);
}
break;
switch (howto->size)
case 1:
{
case 0:
{
char x = bfd_get_8 (abfd, addr);
DOIT (x);
bfd_put_8 (abfd, x, addr);
}
break;
case 1:
{
short x = bfd_get_16 (abfd, addr);
DOIT (x);
bfd_put_16 (abfd, (bfd_vma) x, addr);
}
break;
case 2:
{
long x = bfd_get_32 (abfd, addr);
DOIT (x);
bfd_put_32 (abfd, (bfd_vma) x, addr);
}
break;
case 4:
{
long long x = bfd_get_64 (abfd, addr);
DOIT (x);
bfd_put_64 (abfd, (bfd_vma) x, addr);
}
break;
default:
bfd_set_error (bfd_error_bad_value);
return bfd_reloc_notsupported;
short x = bfd_get_16 (abfd, addr);
DOIT (x);
bfd_put_16 (abfd, (bfd_vma) x, addr);
}
}
break;
case 2:
{
long x = bfd_get_32 (abfd, addr);
DOIT (x);
bfd_put_32 (abfd, (bfd_vma) x, addr);
}
break;
case 4:
{
long long x = bfd_get_64 (abfd, addr);
DOIT (x);
bfd_put_64 (abfd, (bfd_vma) x, addr);
}
break;
default:
bfd_set_error (bfd_error_bad_value);
return bfd_reloc_notsupported;
}
}
/* Now let bfd_perform_relocation finish everything up. */
return bfd_reloc_continue;