Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 10 for AttrReachable (0.43 sec)

  1. src/cmd/link/internal/loader/loader_test.go

    	}
    
    	// New symbols should not initially be reachable.
    	if ldr.AttrReachable(es1) || ldr.AttrReachable(es2) || ldr.AttrReachable(es3) {
    		t.Errorf("newly materialized symbols should not be reachable")
    	}
    
    	// ... however it should be possible to set/unset their reachability.
    	ldr.SetAttrReachable(es3, true)
    	if !ldr.AttrReachable(es3) {
    		t.Errorf("expected reachable symbol after update")
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Mar 07 19:08:09 UTC 2024
    - 12K bytes
    - Viewed (0)
  2. src/cmd/link/internal/ld/deadcode.go

    					// its child types with UsedInIface set. (See also the
    					// comment below.)
    					rs := r.Sym()
    					if !d.ldr.AttrUsedInIface(rs) {
    						d.ldr.SetAttrUsedInIface(rs, true)
    						if d.ldr.AttrReachable(rs) {
    							d.ldr.SetAttrReachable(rs, false)
    							d.mark(rs, symIdx)
    						}
    					}
    				}
    				i += 2
    				continue
    			case objabi.R_USETYPE:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 14:52:41 UTC 2024
    - 19K bytes
    - Viewed (0)
  3. src/cmd/link/internal/loader/loader.go

    	return int64(r.Sym(li).Siz())
    }
    
    // AttrReachable returns true for symbols that are transitively
    // referenced from the entry points. Unreachable symbols are not
    // written to the output.
    func (l *Loader) AttrReachable(i Sym) bool {
    	return l.attrReachable.Has(i)
    }
    
    // SetAttrReachable sets the reachability property for a symbol (see
    // AttrReachable).
    func (l *Loader) SetAttrReachable(i Sym, v bool) {
    	if v {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 24 20:26:10 UTC 2024
    - 81.5K bytes
    - Viewed (0)
  4. src/cmd/link/internal/ld/macho.go

    		return
    	}
    	ldr := ctxt.loader
    
    	for i, s := range syms {
    		if !ldr.AttrReachable(s) {
    			continue
    		}
    		if uint64(ldr.SymValue(s)) >= sect.Vaddr {
    			syms = syms[i:]
    			break
    		}
    	}
    
    	eaddr := sect.Vaddr + sect.Length
    	for _, s := range syms {
    		if !ldr.AttrReachable(s) {
    			continue
    		}
    		if ldr.SymValue(s) >= int64(eaddr) {
    			break
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon May 20 15:32:53 UTC 2024
    - 43.9K bytes
    - Viewed (0)
  5. src/cmd/link/internal/ld/data.go

    			o = ldr.SymValue(rs) + r.Add() - int64(ldr.SymSect(rs).Vaddr)
    		case objabi.R_METHODOFF:
    			if !ldr.AttrReachable(rs) {
    				// Set it to a sentinel value. The runtime knows this is not pointing to
    				// anything valid.
    				o = -1
    				break
    			}
    			fallthrough
    		case objabi.R_ADDROFF:
    			if weak && !ldr.AttrReachable(rs) {
    				continue
    			}
    			sect := ldr.SymSect(rs)
    			if sect == nil {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Jun 12 15:10:50 UTC 2024
    - 100.5K bytes
    - Viewed (0)
  6. src/cmd/link/internal/arm64/asm.go

    	if s := ldr.Lookup("runtime.duffcopy", sym.SymVerABIInternal); s != 0 && ldr.AttrReachable(s) {
    		addLabelSyms(s, 8, 8*64)
    	}
    	if s := ldr.Lookup("runtime.duffzero", sym.SymVerABIInternal); s != 0 && ldr.AttrReachable(s) {
    		addLabelSyms(s, 4, 4*64)
    	}
    
    	if ctxt.IsDarwin() {
    		big := false
    		for _, seg := range ld.Segments {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Jan 30 20:09:45 UTC 2024
    - 47K bytes
    - Viewed (0)
  7. src/cmd/link/internal/ld/elf.go

    		return
    	}
    
    	ldr := ctxt.loader
    	for i, s := range syms {
    		if !ldr.AttrReachable(s) {
    			panic("should never happen")
    		}
    		if uint64(ldr.SymValue(s)) >= sect.Vaddr {
    			syms = syms[i:]
    			break
    		}
    	}
    
    	eaddr := sect.Vaddr + sect.Length
    	for _, s := range syms {
    		if !ldr.AttrReachable(s) {
    			continue
    		}
    		if ldr.SymValue(s) >= int64(eaddr) {
    			break
    		}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 22 13:29:54 UTC 2024
    - 63.6K bytes
    - Viewed (0)
  8. src/cmd/link/internal/ld/dwarf.go

    		die = d.newdie(&dwtypes, dwarf.DW_ABRV_TYPEDECL, name)
    		d.newrefattr(die, dwarf.DW_AT_type, d.mustFind("<unspecified>"))
    	}
    
    	newattr(die, dwarf.DW_AT_go_kind, dwarf.DW_CLS_CONSTANT, int64(kind), 0)
    
    	if d.ldr.AttrReachable(gotype) {
    		newattr(die, dwarf.DW_AT_go_runtime_type, dwarf.DW_CLS_GO_TYPEREF, 0, dwSym(gotype))
    	}
    
    	// Sanity check.
    	if _, ok := d.rtmap[gotype]; ok {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 02 16:25:18 UTC 2024
    - 72.4K bytes
    - Viewed (0)
  9. src/cmd/link/internal/ppc64/asm.go

    	// them to a go version of these functions in runtime/asm_ppc64x.s
    	ts := ldr.LookupOrCreateSym("runtime.elf_"+s[1], 0)
    	r.SetSym(ts)
    	r.SetAdd(int64((n - minReg) * offMul))
    	firstUse = !ldr.AttrReachable(ts)
    	if firstUse {
    		// This function only becomes reachable now. It has been dropped from
    		// the text section (it was unreachable until now), it needs included.
    		ldr.SetAttrReachable(ts, true)
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Mar 19 20:54:08 UTC 2024
    - 63.7K bytes
    - Viewed (0)
  10. src/cmd/link/internal/ld/lib.go

    		// runtime.MemProfile is not retained in the binary after
    		// deadcode (and we're not dynamically linking).
    		memProfile := ctxt.loader.Lookup("runtime.MemProfile", abiInternalVer)
    		if memProfile != 0 && !ctxt.loader.AttrReachable(memProfile) && !ctxt.DynlinkingGo() {
    			memProfSym := ctxt.loader.LookupOrCreateSym("runtime.disableMemoryProfiling", 0)
    			sb := ctxt.loader.MakeSymbolUpdater(memProfSym)
    			sb.SetType(sym.SDATA)
    			sb.SetSize(0)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 21 18:45:27 UTC 2024
    - 88.6K bytes
    - Viewed (0)
Back to top