diff options
author | Alan Modra <amodra@gmail.com> | 2021-06-21 17:07:05 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2021-06-22 17:44:45 +0930 |
commit | ded5cb94441b2a47a75a0b1d26218f0d5e3dca28 (patch) | |
tree | 4817ba5c5893550c18a2e219871c3a91f870c8cf /gas/config | |
parent | 456ef1c1d43c0407801fb2d59db355472be8a554 (diff) | |
download | fsf-binutils-gdb-ded5cb94441b2a47a75a0b1d26218f0d5e3dca28.zip fsf-binutils-gdb-ded5cb94441b2a47a75a0b1d26218f0d5e3dca28.tar.gz fsf-binutils-gdb-ded5cb94441b2a47a75a0b1d26218f0d5e3dca28.tar.bz2 |
picojava assembler and disassembler fixes
Commit 54758c3e398d made changes to the picojava support based on
https://sourceware.org/pipermail/binutils/2005-November/045136.html
An update from picojava to picojava II, I think. Unfortunately the
patch neglected any changes to the gas testsuite, resulting in
"FAIL: pj" since that date. This patch makes a few relatively simple
changes to cure the regression.
gas/
* config/tc-pj.c (md_apply_fix): Apply PJ_CODE_REL32 relocs.
* testsuite/gas/pj/ops.s: Update jsr, ret, getstatic,
putstatic, getfield, putfield, invokevirtual, invokespecial,
invokestatic, invokeinterface, goto_w, jsr_w assembly. Delete
version 1 picojava opcodes.
* testsuite/gas/pj/ops.d: Match expected output.
opcodes/
* pj-dis.c (print_insn_pj): Don't print trailing tab. Do
print separator for pcrel insns.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-pj.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/gas/config/tc-pj.c b/gas/config/tc-pj.c index 72391f6..22aa409 100644 --- a/gas/config/tc-pj.c +++ b/gas/config/tc-pj.c @@ -404,6 +404,7 @@ md_apply_fix (fixS *fixP, valueT * valP, segT seg ATTRIBUTE_UNUSED) break; case BFD_RELOC_PJ_CODE_DIR32: + case BFD_RELOC_PJ_CODE_REL32: *buf++ = val >> 24; *buf++ = val >> 16; *buf++ = val >> 8; @@ -440,10 +441,6 @@ md_apply_fix (fixS *fixP, valueT * valP, segT seg ATTRIBUTE_UNUSED) } break; - case BFD_RELOC_PJ_CODE_REL32: - fixP->fx_done = 0; - return; - default: abort (); } |