summaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2012-10-26 03:40:36 +0000
committerAlan Modra <amodra@bigpond.net.au>2012-10-26 03:40:36 +0000
commit2e8c333d901c35f790601aa72b0ff4dc7dfb2225 (patch)
treee75c4ae6d70944d447a029794c6ba1bb80a33a4e /gas
parent0d79cdb2e17eaca0ff26f86840979729370e6b5a (diff)
downloadbinutils-redhat-2e8c333d901c35f790601aa72b0ff4dc7dfb2225.tar.gz
PR target/14758
bfd/ * elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS bfd_reloc values. Map to corresponding D-form relocs. (is_insn_ds_form, is_insn_qs_form): New functions. (ppc_elf_relocate_section): Validate insn with DS-form or DQ-form fields using D-form reloc. gas/ * config/tc-ppc.c (ppc_setup_opcodes): Fix comment. (md_assemble): Translate to _DS relocs for ppc32 as well as ppc64. (tc_gen_reloc): Handle _DS relocs in ppc32 mode.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/tc-ppc.c5
2 files changed, 9 insertions, 3 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 035a9cc306..7b85c7cf5e 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2012-10-26 Alan Modra <amodra@gmail.com>
+
+ PR target/14758
+ * config/tc-ppc.c (ppc_setup_opcodes): Fix comment.
+ (md_assemble): Translate to _DS relocs for ppc32 as well as ppc64.
+ (tc_gen_reloc): Handle _DS relocs in ppc32 mode.
+
2012-10-22 Simon Baldwin <simonb@google.com>
* as.c (dump_statistics): Compute data size as the delta between
diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c
index 2820c31bde..62c4791b2b 100644
--- a/gas/config/tc-ppc.c
+++ b/gas/config/tc-ppc.c
@@ -1513,7 +1513,7 @@ insn_validate (const struct powerpc_opcode *op)
}
/* Insert opcodes and macros into hash tables. Called at startup and
- for .cpu pseudo. */
+ for .machine pseudo. */
static void
ppc_setup_opcodes (void)
@@ -3062,8 +3062,7 @@ md_assemble (char *str)
break;
}
- if (ppc_obj64
- && (operand->flags & (PPC_OPERAND_DS | PPC_OPERAND_DQ)) != 0)
+ if ((operand->flags & (PPC_OPERAND_DS | PPC_OPERAND_DQ)) != 0)
{
switch (reloc)
{