Lines Matching refs:rel

49   void relocate(uint8_t *loc, const Relocation &rel,
537 static void encodeAluGroup(uint8_t *loc, const Relocation &rel, uint64_t val, in encodeAluGroup() argument
556 " for relocation " + toString(rel.type)); in encodeAluGroup()
560 static void encodeLdrGroup(uint8_t *loc, const Relocation &rel, uint64_t val, in encodeLdrGroup() argument
565 if (rel.sym->isFunc()) in encodeLdrGroup()
574 checkUInt(loc, imm, 12, rel); in encodeLdrGroup()
578 static void encodeLdrsGroup(uint8_t *loc, const Relocation &rel, uint64_t val, in encodeLdrsGroup() argument
583 if (rel.sym->isFunc()) in encodeLdrsGroup()
592 checkUInt(loc, imm, 8, rel); in encodeLdrsGroup()
597 void ARM::relocate(uint8_t *loc, const Relocation &rel, uint64_t val) const { in relocate() argument
598 switch (rel.type) { in relocate()
619 checkInt(loc, val, 31, rel); in relocate()
627 assert(rel.sym); // R_ARM_CALL is always reached via relocate(). in relocate()
632 if (!rel.sym->isFunc() && isBlx != bit0Thumb) in relocate()
633 stateChangeWarning(loc, rel.type, *rel.sym); in relocate()
634 if (rel.sym->isFunc() ? bit0Thumb : isBlx) { in relocate()
636 checkInt(loc, val, 26, rel); in relocate()
651 checkInt(loc, val, 26, rel); in relocate()
656 checkInt(loc, val, 9, rel); in relocate()
661 checkInt(loc, val, 12, rel); in relocate()
666 checkInt(loc, val, 21, rel); in relocate()
683 assert(rel.sym); // R_ARM_THM_CALL is always reached via relocate(). in relocate()
689 if (!rel.sym->isFunc() && !rel.sym->isInPlt() && isBlx == useThumb) in relocate()
690 stateChangeWarning(loc, rel.type, *rel.sym); in relocate()
691 if ((rel.sym->isFunc() || rel.sym->isInPlt()) ? !useThumb : isBlx) { in relocate()
703 checkInt(loc, val, 23, rel); in relocate()
718 checkInt(loc, val, 25, rel); in relocate()
782 encodeAluGroup(loc, rel, val, 0, true); in relocate()
785 encodeAluGroup(loc, rel, val, 0, false); in relocate()
788 encodeAluGroup(loc, rel, val, 1, true); in relocate()
791 encodeAluGroup(loc, rel, val, 1, false); in relocate()
794 encodeAluGroup(loc, rel, val, 2, true); in relocate()
797 encodeLdrGroup(loc, rel, val, 0); in relocate()
800 encodeLdrGroup(loc, rel, val, 1); in relocate()
803 encodeLdrGroup(loc, rel, val, 2); in relocate()
806 encodeLdrsGroup(loc, rel, val, 0); in relocate()
809 encodeLdrsGroup(loc, rel, val, 1); in relocate()
812 encodeLdrsGroup(loc, rel, val, 2); in relocate()
822 checkUInt(loc, imm, 12, rel); in relocate()
833 if (rel.sym->isFunc()) in relocate()
835 checkUInt(loc, val, 10, rel); in relocate()
836 checkAlignment(loc, val, 4, rel); in relocate()
845 if (rel.sym->isFunc()) in relocate()
853 checkUInt(loc, imm12, 12, rel); in relocate()