From ee22a1a31d3432bb40b67229f75ae7c2a271e38e Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Wed, 19 May 2021 15:27:28 +0000 Subject: [PATCH] Fix offset for ia64 PCREL60B relocation on HP-UX gas/ChangeLog: 2021-05-19 John Buddery PR 25599 * config/tc-ia64.c (emit_one_bundle): Increment fixup offset by one for PCREL60B relocation on HP-UX. --- gas/config/tc-ia64.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index 045abaf7357..34482eb4f97 100644 --- a/gas/config/tc-ia64.c +++ b/gas/config/tc-ia64.c @@ -6887,8 +6887,17 @@ emit_one_bundle (void) for (j = 0; j < md.slot[curr].num_fixups; ++j) { + unsigned long where; + ifix = md.slot[curr].fixup + j; - fix = fix_new_exp (frag_now, frag_now_fix () - 16 + i, 8, + where = frag_now_fix () - 16 + i; +#ifdef TE_HPUX + /* Fix offset for PCREL60B relocation on HP-UX. */ + if (ifix->code == BFD_RELOC_IA64_PCREL60B) + ++where; +#endif + + fix = fix_new_exp (frag_now, where, 8, &ifix->expr, ifix->is_pcrel, ifix->code); fix->tc_fix_data.opnd = ifix->opnd; fix->fx_file = md.slot[curr].src_file; -- 2.30.2