Lines Matching defs:Fixup
71 // Fixup kinds from .reloc directive are like R_LARCH_NONE. They
89 static uint64_t adjustFixupValue(const MCFixup &Fixup, uint64_t Value,
91 switch (Fixup.getTargetKind()) {
102 reportOutOfRangeError(Ctx, Fixup.getLoc(), 18);
104 Ctx.reportError(Fixup.getLoc(), "fixup value must be 4-byte aligned");
109 reportOutOfRangeError(Ctx, Fixup.getLoc(), 23);
111 Ctx.reportError(Fixup.getLoc(), "fixup value must be 4-byte aligned");
116 reportOutOfRangeError(Ctx, Fixup.getLoc(), 28);
118 Ctx.reportError(Fixup.getLoc(), "fixup value must be 4-byte aligned");
136 static void fixupLeb128(MCContext &Ctx, const MCFixup &Fixup,
142 Ctx.reportError(Fixup.getLoc(), "Invalid uleb128 value!");
146 const MCFixup &Fixup,
154 MCFixupKind Kind = Fixup.getKind();
160 // Fixup leb128 separately.
161 if (Fixup.getTargetKind() == FK_Data_leb128)
162 return fixupLeb128(Ctx, Fixup, Data, Value);
165 Value = adjustFixupValue(Fixup, Value, Ctx);
170 unsigned Offset = Fixup.getOffset();
224 MCFixup Fixup =
246 Asm.getWriter().recordRelocation(Asm, &AF, Fixup, Value, FixedValue);
252 const MCFixup &Fixup,
255 if (Fixup.getKind() >= FirstLiteralRelocationKind)
257 switch (Fixup.getTargetKind()) {
453 const MCFixup &Fixup,
467 // section of Fixup, which will be record the relocation as PCRel. If SecB
468 // is not same as the section of Fixup, it will report error. Just return
480 switch (Fixup.getKind()) {
501 auto FA = MCFixup::create(Fixup.getOffset(), nullptr, std::get<0>(FK));
502 auto FB = MCFixup::create(Fixup.getOffset(), nullptr, std::get<1>(FK));