Lines Matching refs:rel

43   void relocate(uint8_t *loc, const Relocation &rel,
442 static void encodeAluGroup(uint8_t *loc, const Relocation &rel, uint64_t val, in encodeAluGroup() argument
461 " for relocation " + toString(rel.type)); in encodeAluGroup()
465 static void encodeLdrGroup(uint8_t *loc, const Relocation &rel, uint64_t val, in encodeLdrGroup() argument
470 if (rel.sym->isFunc()) in encodeLdrGroup()
479 checkUInt(loc, imm, 12, rel); in encodeLdrGroup()
483 static void encodeLdrsGroup(uint8_t *loc, const Relocation &rel, uint64_t val, in encodeLdrsGroup() argument
488 if (rel.sym->isFunc()) in encodeLdrsGroup()
497 checkUInt(loc, imm, 8, rel); in encodeLdrsGroup()
502 void ARM::relocate(uint8_t *loc, const Relocation &rel, uint64_t val) const { in relocate() argument
503 switch (rel.type) { in relocate()
524 checkInt(loc, val, 31, rel); in relocate()
533 assert(rel.sym); // R_ARM_CALL is always reached via relocate(). in relocate()
538 if (!rel.sym->isFunc() && isBlx != bit0Thumb) in relocate()
539 stateChangeWarning(loc, rel.type, *rel.sym); in relocate()
540 if (rel.sym->isFunc() ? bit0Thumb : isBlx) { in relocate()
542 checkInt(loc, val, 26, rel); in relocate()
557 checkInt(loc, val, 26, rel); in relocate()
562 checkInt(loc, val, 9, rel); in relocate()
567 checkInt(loc, val, 12, rel); in relocate()
572 checkInt(loc, val, 21, rel); in relocate()
589 assert(rel.sym); // R_ARM_THM_CALL is always reached via relocate(). in relocate()
594 if (!rel.sym->isFunc() && !rel.sym->isInPlt() && isBlx == bit0Thumb) in relocate()
595 stateChangeWarning(loc, rel.type, *rel.sym); in relocate()
596 if (rel.sym->isFunc() || rel.sym->isInPlt() ? !bit0Thumb : isBlx) { in relocate()
608 checkInt(loc, val, 23, rel); in relocate()
623 checkInt(loc, val, 25, rel); in relocate()
673 encodeAluGroup(loc, rel, val, 0, true); in relocate()
676 encodeAluGroup(loc, rel, val, 0, false); in relocate()
679 encodeAluGroup(loc, rel, val, 1, true); in relocate()
682 encodeAluGroup(loc, rel, val, 1, false); in relocate()
685 encodeAluGroup(loc, rel, val, 2, true); in relocate()
688 encodeLdrGroup(loc, rel, val, 0); in relocate()
691 encodeLdrGroup(loc, rel, val, 1); in relocate()
694 encodeLdrGroup(loc, rel, val, 2); in relocate()
697 encodeLdrsGroup(loc, rel, val, 0); in relocate()
700 encodeLdrsGroup(loc, rel, val, 1); in relocate()
703 encodeLdrsGroup(loc, rel, val, 2); in relocate()
713 checkUInt(loc, imm, 12, rel); in relocate()
724 if (rel.sym->isFunc()) in relocate()
726 checkUInt(loc, val, 10, rel); in relocate()
727 checkAlignment(loc, val, 4, rel); in relocate()
736 if (rel.sym->isFunc()) in relocate()
744 checkUInt(loc, imm12, 12, rel); in relocate()