RISC-V: Fix DW_CFA_advance_loc relocation.
[binutils-gdb.git] / gas / config / tc-riscv.c
index 3744e84d99ad6bacf38b9a0ddd980e2f262c12eb..723ccbafb0f8383cd62d877b6b08fa69facd48cf 100644 (file)
@@ -1966,6 +1966,8 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED)
                  if (subtype < 0x80 && (subtype & 0x40))
                    {
                      /* DW_CFA_advance_loc */
+                     fixP->fx_frag = (fragS *) fixP->fx_frag->fr_opcode;
+                     fixP->fx_next->fx_frag = fixP->fx_frag;
                      fixP->fx_r_type = BFD_RELOC_RISCV_SET6;
                      fixP->fx_next->fx_r_type = BFD_RELOC_RISCV_SUB6;
                    }