This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Small cleanup for x86-64
- To: binutils at sources dot redhat dot com
- Subject: Small cleanup for x86-64
- From: Andreas Jaeger <aj at suse dot de>
- Date: 01 Jun 2001 13:52:10 +0200
The patch I've send yesterday is broken. Before fixing this properly,
I'm committing now just a small cleanup patch.
Andreas
2001-06-01 Andreas Jaeger <aj@suse.de>
* elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8
relocation, small reformatting.
Index: bfd/elf64-x86-64.c
===================================================================
RCS file: /cvs/src/src/bfd/elf64-x86-64.c,v
retrieving revision 1.17
diff -u -r1.17 elf64-x86-64.c
--- elf64-x86-64.c 2001/05/30 18:44:46 1.17
+++ elf64-x86-64.c 2001/06/01 11:50:05
@@ -1264,12 +1264,13 @@
&& ((! info->symbolic && h->dynindx != -1)
|| (h->elf_link_hash_flags
& ELF_LINK_HASH_DEF_REGULAR) == 0)
- && ( r_type == R_X86_64_8 ||
- r_type == R_X86_64_16 ||
- r_type == R_X86_64_32 ||
- r_type == R_X86_64_64 ||
- r_type == R_X86_64_PC16 ||
- r_type == R_X86_64_PC32)
+ && (r_type == R_X86_64_8
+ || r_type == R_X86_64_16
+ || r_type == R_X86_64_32
+ || r_type == R_X86_64_64
+ || r_type == R_X86_64_PC8
+ || r_type == R_X86_64_PC16
+ || r_type == R_X86_64_PC32)
&& ((input_section->flags & SEC_ALLOC) != 0
/* DWARF will emit R_X86_64_32 relocations in its
sections against symbols defined externally
@@ -1440,11 +1441,12 @@
case R_X86_64_PC8:
case R_X86_64_PC16:
case R_X86_64_PC32:
- /* FIXME: The abi says the linker should make sure the value is
+ /* FIXME: The ABI says the linker should make sure the value is
the same when it's zeroextended to 64 bit. */
if (info->shared
&& (input_section->flags & SEC_ALLOC) != 0
- && ((r_type != R_X86_64_PC8 && r_type != R_X86_64_PC16
+ && ((r_type != R_X86_64_PC8
+ && r_type != R_X86_64_PC16
&& r_type != R_X86_64_PC32)
|| (h != NULL
&& h->dynindx != -1
@@ -1505,7 +1507,8 @@
memset (&outrel, 0, sizeof outrel);
relocate = false;
}
- else if ((r_type == R_X86_64_PC8) || (r_type == R_X86_64_PC16)
+ else if ((r_type == R_X86_64_PC8)
+ || (r_type == R_X86_64_PC16)
|| (r_type == R_X86_64_PC32))
{
BFD_ASSERT (h != NULL && h->dynindx != -1);
--
Andreas Jaeger
SuSE Labs aj@suse.de
private aj@arthur.inka.de
http://www.suse.de/~aj