Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 17 for ldr (0.1 sec)

  1. src/cmd/link/internal/mips/asm.go

    	case objabi.R_CALLMIPS, objabi.R_JMPMIPS:
    		t := ldr.SymValue(rs) + r.Add()
    
    		if t&3 != 0 {
    			ldr.Errorf(s, "direct call is not aligned: %s %x", ldr.SymName(rs), t)
    		}
    
    		// check if target address is in the same 256 MB region as the next instruction
    		if (ldr.SymValue(s)+int64(r.Off())+4)&0xf0000000 != (t & 0xf0000000) {
    			ldr.Errorf(s, "direct call too far: %s %x", ldr.SymName(rs), t)
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Aug 23 05:58:20 UTC 2023
    - 5.5K bytes
    - Viewed (0)
  2. src/cmd/link/internal/ld/inittask.go

    	// initialize the runtime_inittasks variable.
    	ldr := ctxt.loader
    	if ldr.Lookup("runtime.runtime_inittasks", 0) != 0 {
    		t := ctxt.inittaskSym([]string{"runtime..inittask"}, "go:runtime.inittasks")
    
    		// This slice header is already defined in runtime/proc.go, so we update it here with new contents.
    		sh := ldr.Lookup("runtime.runtime_inittasks", 0)
    		sb := ldr.MakeSymbolUpdater(sh)
    		sb.SetSize(0)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jan 30 20:09:45 UTC 2024
    - 6.2K bytes
    - Viewed (0)
  3. src/cmd/link/internal/ld/typelink.go

    // MakeTypelink attribute by the compiler.
    func (ctxt *Link) typelink() {
    	ldr := ctxt.loader
    	typelinks := byTypeStr{}
    	var itabs []loader.Sym
    	for s := loader.Sym(1); s < loader.Sym(ldr.NSym()); s++ {
    		if !ldr.AttrReachable(s) {
    			continue
    		}
    		if ldr.IsTypelink(s) {
    			typelinks = append(typelinks, typelinkSortKey{decodetypeStr(ldr, ctxt.Arch, s), s})
    		} else if ldr.IsItab(s) {
    			itabs = append(itabs, s)
    		}
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Aug 03 21:13:25 UTC 2020
    - 1.9K bytes
    - Viewed (0)
  4. src/cmd/link/internal/loadpe/seh.go

    // in the final binary.
    func processSEH(ldr *loader.Loader, arch *sys.Arch, pdata sym.LoaderSym, xdata sym.LoaderSym) error {
    	switch arch.Family {
    	case sys.AMD64:
    		ldr.SetAttrReachable(pdata, true)
    		if xdata != 0 {
    			ldr.SetAttrReachable(xdata, true)
    		}
    		return processSEHAMD64(ldr, pdata)
    	default:
    		// TODO: support SEH on other architectures.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Nov 22 16:20:28 UTC 2023
    - 3.4K bytes
    - Viewed (0)
  5. src/cmd/link/internal/loong64/asm.go

    			objabi.R_LOONG64_ADDR_LO:
    			// set up addend for eventual relocation via outer symbol.
    			rs, _ := ld.FoldSubSymbolOffset(ldr, rs)
    			rst := ldr.SymType(rs)
    			if rst != sym.SHOSTOBJ && rst != sym.SDYNIMPORT && ldr.SymSect(rs) == nil {
    				ldr.Errorf(s, "missing section for %s", ldr.SymName(rs))
    			}
    			return val, 1, true
    		case objabi.R_LOONG64_TLS_LE_HI,
    			objabi.R_LOONG64_TLS_LE_LO,
    			objabi.R_CALLLOONG64,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Feb 27 17:26:07 UTC 2024
    - 7.5K bytes
    - Viewed (0)
  6. src/cmd/link/internal/ld/seh.go

    	for _, s := range ctxt.Textp {
    		if fi := ldr.FuncInfo(s); !fi.Valid() {
    			continue
    		}
    		uw := ldr.SEHUnwindSym(s)
    		if uw == 0 {
    			continue
    		}
    		name := ctxt.SymName(uw)
    		off, cached := uwcache[name]
    		if !cached {
    			off = xdata.Size()
    			uwcache[name] = off
    			xdata.AddBytes(ldr.Data(uw))
    			// The SEH unwind data can contain relocations,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Nov 09 19:01:27 UTC 2023
    - 2K bytes
    - Viewed (0)
  7. src/cmd/link/internal/ld/heap.go

    type lexHeap []loader.Sym
    
    func (h *lexHeap) push(ldr *loader.Loader, s loader.Sym) {
    	*h = append(*h, s)
    	// sift up
    	n := len(*h) - 1
    	for n > 0 {
    		p := (n - 1) / 2 // parent
    		if ldr.SymName((*h)[p]) <= ldr.SymName((*h)[n]) {
    			break
    		}
    		(*h)[n], (*h)[p] = (*h)[p], (*h)[n]
    		n = p
    	}
    }
    
    func (h *lexHeap) pop(ldr *loader.Loader) loader.Sym {
    	r := (*h)[0]
    	n := len(*h) - 1
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 14 16:55:22 UTC 2023
    - 1.9K bytes
    - Viewed (0)
  8. src/cmd/link/internal/ld/errors.go

    		haveABI = ^obj.ABI(0)
    		reqABI, ok := sym.VersionToABI(ldr.SymVersion(rs))
    		if ok {
    			for abi := obj.ABI(0); abi < obj.ABICount; abi++ {
    				v := sym.ABIToVersion(abi)
    				if v == -1 {
    					continue
    				}
    				if rs1 := ldr.Lookup(name, v); rs1 != 0 && ldr.SymType(rs1) != sym.Sxxx && ldr.SymType(rs1) != sym.SXREF {
    					haveABI = abi
    				}
    			}
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Nov 02 14:38:08 UTC 2022
    - 1.9K bytes
    - Viewed (0)
  9. src/cmd/link/internal/ld/outbuf.go

    // buffer.
    func (out *OutBuf) WriteSym(ldr *loader.Loader, s loader.Sym) []byte {
    	if !ldr.IsGeneratedSym(s) {
    		P := ldr.Data(s)
    		n := int64(len(P))
    		pos, buf := out.writeLoc(n)
    		copy(buf[pos:], P)
    		out.off += n
    		ldr.FreeData(s)
    		return buf[pos : pos+n]
    	} else {
    		n := ldr.SymSize(s)
    		pos, buf := out.writeLoc(n)
    		out.off += n
    		ldr.MakeSymbolUpdater(s).SetData(buf[pos : pos+n])
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 17 19:51:29 UTC 2022
    - 8.1K bytes
    - Viewed (0)
  10. src/cmd/link/internal/ld/link.go

    // symbol.
    func (ctxt *Link) createGeneratorSymbol(name string, version int, t sym.SymKind, size int64, gen generatorFunc) loader.Sym {
    	ldr := ctxt.loader
    	s := ldr.LookupOrCreateSym(name, version)
    	ldr.SetIsGeneratedSym(s, true)
    	sb := ldr.MakeSymbolUpdater(s)
    	sb.SetType(t)
    	sb.SetSize(size)
    	ctxt.generatorSyms[s] = gen
    	return s
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 19 15:59:22 UTC 2022
    - 5.1K bytes
    - Viewed (0)
Back to top