From 405b61965ff7608840cfda36083c1be1f926ccdb Mon Sep 17 00:00:00 2001 From: John Darrington Date: Tue, 23 Oct 2018 15:33:18 +0200 Subject: [PATCH] S12Z: Handle 16 bit fixups which are constant. Commit 1f38083f425e03faf55595414daf291306738222 added a test to check that the assembler handled fixups with resolved to constant values. We were not handling this in the case of 16 bit values. This change fixes that. * gas/config/tc-s12z.c (md_apply_fix): Handle BFD_RELOC_16 --- gas/ChangeLog | 5 +++++ gas/config/tc-s12z.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/gas/ChangeLog b/gas/ChangeLog index d5935b79f12..759186b00cd 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2018-10-23 John Darrington + + * config/tc-s12z.c (md_apply_fix): Handle BFD_RELOC_16 for fixups + without a symbol. + 2018-10-22 Alan Modra * testsuite/gas/all/simple-forward.d, diff --git a/gas/config/tc-s12z.c b/gas/config/tc-s12z.c index d3b2ea4c4af..9df86432a5f 100644 --- a/gas/config/tc-s12z.c +++ b/gas/config/tc-s12z.c @@ -3815,6 +3815,9 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED) case BFD_RELOC_8: ((bfd_byte *) where)[0] = (bfd_byte) value; break; + case BFD_RELOC_16: + bfd_putb16 ((bfd_vma) value, (unsigned char *) where); + break; case BFD_RELOC_24: bfd_putb24 ((bfd_vma) value, (unsigned char *) where); break; -- 2.30.2