Lines Matching +full:25 +full:a
38 int64_t a) const override;
54 // Set `sigrie 1` as a trap instruction. in MIPS()
87 // (e.g. a table of function pointers). When we encounter this, ignore the in getRelExpr()
88 // relocation and emit a warning instead. in getRelExpr()
92 toString(s) + ". This is invalid and most likely a compiler bug."); in getRelExpr()
215 // The major opcode of a microMIPS instruction needs to appear in readShuffle()
219 // words in a big-endian order. That is why we have to swap these in readShuffle()
220 // words to get a correct value. in readShuffle()
266 write16(buf + 4, 0xff23); // lw $25, 0($3) in writePltHeader()
274 write16(buf + 20, 0x472b); // jalrc $25 in writePltHeader()
278 write16(buf + 18, 0x45f9); // jalrc $25 in writePltHeader()
288 write32(buf + 4, 0x8dd90000); // lw $25, %lo(&GOTPLT[0])($14) in writePltHeader()
295 write32(buf + 4, 0xddd90000); // ld $25, %lo(&GOTPLT[0])($14) in writePltHeader()
302 write32(buf + 4, 0x8f990000); // lw $25, %lo(&GOTPLT[0])($28) in writePltHeader()
310 write32(buf + 24, jalrInst); // jalr.hb $25 or jalr $25 in writePltHeader()
329 write16(buf + 4, 0xff22); // lw $25, 0($2) in writePlt()
331 write16(buf + 10, 0x4723); // jrc $25 / jr16 $25 in writePlt()
335 write16(buf + 4, 0xff22); // lw $25, 0($2) in writePlt()
336 write16(buf + 8, 0x4599); // jrc $25 / jr16 $25 in writePlt()
349 write32(buf + 4, loadInst); // l[wd] $25, %lo(.got.plt entry)($15) in writePlt()
350 write32(buf + 8, jrInst); // jr $25 / jr.hb $25 in writePlt()
360 int64_t /*a*/) const { in needsThunk()
362 // So if we have a branch instruction from non-PIC code to the PIC one in needsThunk()
363 // we cannot make the jump directly and need to create a small stubs in needsThunk()
377 // or target symbol is a PIC symbol. in needsThunk()
393 // FIXME (simon): If the relocation target symbol is not a PLT entry in getImplicitAddend()
395 // ((A << 2) | (P & 0xf0000000)) >> 2 in getImplicitAddend()
458 return SignExtend64<25>(readShuffle<e>(buf) << 2); in getImplicitAddend()
485 // types. In fact, Clang and GCC uses only a few combinations. For now, in calculateMipsRelChain()
490 // The first relocation is a 'real' relocation which is calculated in calculateMipsRelChain()
521 // to a microMIPS target and vice versa. In that cases jump in fixupCrossModeJump()
605 // is updated addend (not a GOT index). In that case write high 16 bits in relocate()
606 // to store a correct addend value. in relocate()
685 case 0x0320f809: // jalr $25 => bal sym in relocate()
688 case 0x03200008: // jr $25 => b sym in relocate()
750 checkInt(loc, val, 25, rel); in relocate()
763 // Return true if the symbol is a PIC function.