Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 3 of 3 for SymGot (0.29 sec)

  1. src/cmd/link/internal/ld/lib.go

    	if ldr.SymGot(s) >= 0 {
    		return
    	}
    
    	Adddynsym(ldr, target, syms, s)
    	got := ldr.MakeSymbolUpdater(syms.GOT)
    	ldr.SetGot(s, int32(got.Size()))
    	got.AddUint(target.Arch, 0)
    
    	if target.IsElf() {
    		if target.Arch.PtrSize == 8 {
    			rela := ldr.MakeSymbolUpdater(syms.Rela)
    			rela.AddAddrPlus(target.Arch, got.Sym(), int64(ldr.SymGot(s)))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 21 18:45:27 UTC 2024
    - 88.6K bytes
    - Viewed (0)
  2. src/cmd/link/internal/ppc64/asm.go

    		if targType != sym.STEXT {
    			ld.AddGotSym(target, ldr, syms, targ, uint32(elf.R_PPC64_GLOB_DAT))
    			su.SetRelocSym(rIdx, syms.GOT)
    			su.SetRelocAdd(rIdx, r.Add()+int64(ldr.SymGot(targ)))
    		} else {
    			// The address of targ is known at link time. Rewrite to "pla rt,targ" from "pld rt,targ@got"
    			rewritetoinsn(target, ldr, su, int64(r.Off()), MASK_PLD_PFX, OP_PLD_PFX_PCREL, OP_PLA_PFX)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Mar 19 20:54:08 UTC 2024
    - 63.7K bytes
    - Viewed (0)
  3. src/cmd/link/internal/loader/loader.go

    	if i >= Sym(len(l.objSyms)) || i == 0 {
    		panic("bad symbol for SetPlt")
    	}
    	if v == -1 {
    		delete(l.plt, i)
    	} else {
    		l.plt[i] = v
    	}
    }
    
    // SymGot returns the GOT offset of symbol s.
    func (l *Loader) SymGot(s Sym) int32 {
    	if v, ok := l.got[s]; ok {
    		return v
    	}
    	return -1
    }
    
    // SetGot sets the GOT offset of symbol i.
    func (l *Loader) SetGot(i Sym, v int32) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 24 20:26:10 UTC 2024
    - 81.5K bytes
    - Viewed (0)
Back to top