Lines Matching refs:val
76 #define RELOC_REACHABLE(val, bits) \ argument
77 (( ( !((val) & (1<<((bits)-1))) && ((val)>>(bits)) != 0 ) || \
78 ( ((val) & (1<<((bits)-1))) && ((val)>>(bits)) != (((__typeof__(val))(~0))>>((bits)+2)))) ? \
81 #define CHECK_RELOC(val, bits) \ argument
82 if (!RELOC_REACHABLE(val, bits)) { \
84 me->name, strtab + sym->st_name, (unsigned long)val, bits); \
548 Elf32_Addr val; in apply_relocate_add() local
575 val = sym->st_value; in apply_relocate_add()
582 (uint32_t)loc, val, addend, in apply_relocate_add()
600 *loc = fsel(val, addend); in apply_relocate_add()
604 *loc = fsel(val, addend); in apply_relocate_add()
608 val = lrsel(val, addend); in apply_relocate_add()
609 *loc = mask(*loc, 21) | reassemble_21(val); in apply_relocate_add()
613 val = rrsel(val, addend); in apply_relocate_add()
614 *loc = mask(*loc, 14) | reassemble_14(val); in apply_relocate_add()
621 *loc = fsel(val, addend); in apply_relocate_add()
625 val = lrsel(val - dp, addend); in apply_relocate_add()
626 *loc = mask(*loc, 21) | reassemble_21(val); in apply_relocate_add()
630 val = rrsel(val - dp, addend); in apply_relocate_add()
631 *loc = mask(*loc, 14) | reassemble_14(val); in apply_relocate_add()
636 val += addend; in apply_relocate_add()
637 val = (val - dot - 8)/4; in apply_relocate_add()
638 if (!RELOC_REACHABLE(val, 17)) { in apply_relocate_add()
641 val = get_stub(me, sym->st_value, addend, in apply_relocate_add()
643 val = (val - dot - 8)/4; in apply_relocate_add()
644 CHECK_RELOC(val, 17); in apply_relocate_add()
646 *loc = (*loc & ~0x1f1ffd) | reassemble_17(val); in apply_relocate_add()
651 val += addend; in apply_relocate_add()
652 val = (val - dot - 8)/4; in apply_relocate_add()
653 if (!RELOC_REACHABLE(val, 22)) { in apply_relocate_add()
656 val = get_stub(me, sym->st_value, addend, in apply_relocate_add()
658 val = (val - dot - 8)/4; in apply_relocate_add()
659 CHECK_RELOC(val, 22); in apply_relocate_add()
661 *loc = (*loc & ~0x3ff1ffd) | reassemble_22(val); in apply_relocate_add()
686 Elf64_Addr val; in apply_relocate_add() local
712 val = sym->st_value; in apply_relocate_add()
719 loc, val, addend, in apply_relocate_add()
733 val = get_got(me, val, addend); in apply_relocate_add()
736 loc, val); in apply_relocate_add()
737 val = lrsel(val, 0); in apply_relocate_add()
738 *loc = mask(*loc, 21) | reassemble_21(val); in apply_relocate_add()
743 val = get_got(me, val, addend); in apply_relocate_add()
744 val = rrsel(val, 0); in apply_relocate_add()
747 loc, val); in apply_relocate_add()
748 *loc = mask(*loc, 14) | reassemble_14(val); in apply_relocate_add()
754 loc, val); in apply_relocate_add()
755 val += addend; in apply_relocate_add()
757 if (in_local(me, (void *)val)) { in apply_relocate_add()
762 val = (val - dot - 8)/4; in apply_relocate_add()
763 if (!RELOC_REACHABLE(val, 22)) { in apply_relocate_add()
766 val = get_stub(me, sym->st_value, in apply_relocate_add()
771 val = sym->st_value; in apply_relocate_add()
772 val += addend; in apply_relocate_add()
775 val = sym->st_value; in apply_relocate_add()
778 val = get_stub(me, val, addend, ELF_STUB_MILLI, in apply_relocate_add()
781 val = get_stub(me, val, addend, ELF_STUB_GOT, in apply_relocate_add()
786 addend, val); in apply_relocate_add()
787 val = (val - dot - 8)/4; in apply_relocate_add()
788 CHECK_RELOC(val, 22); in apply_relocate_add()
789 *loc = (*loc & ~0x3ff1ffd) | reassemble_22(val); in apply_relocate_add()
793 *loc64 = val + addend; in apply_relocate_add()
800 *loc = fsel(val, addend); in apply_relocate_add()
804 if(in_local(me, (void *)(val + addend))) { in apply_relocate_add()
805 *loc64 = get_fdesc(me, val+addend); in apply_relocate_add()
815 loc, val); in apply_relocate_add()
816 *loc64 = val + addend; in apply_relocate_add()