Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 8 of 8 for setMarked (0.15 sec)

  1. src/runtime/mwbbuf.go

    			continue
    		}
    		// TODO: Consider making two passes where the first
    		// just prefetches the mark bits.
    		mbits := span.markBitsForIndex(objIndex)
    		if mbits.isMarked() {
    			continue
    		}
    		mbits.setMarked()
    
    		// Mark span.
    		arena, pageIdx, pageMask := pageIndexOf(span.base())
    		if arena.pageMarks[pageIdx]&pageMask == 0 {
    			atomic.Or8(&arena.pageMarks[pageIdx], pageMask)
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 8.1K bytes
    - Viewed (0)
  2. src/runtime/mgcmark.go

    			gcDumpObject("obj", obj, ^uintptr(0))
    			getg().m.traceback = 2
    			throw("marking free object")
    		}
    
    		// If marked we have nothing to do.
    		if mbits.isMarked() {
    			return
    		}
    		mbits.setMarked()
    
    		// Mark span.
    		arena, pageIdx, pageMask := pageIndexOf(span.base())
    		if arena.pageMarks[pageIdx]&pageMask == 0 {
    			atomic.Or8(&arena.pageMarks[pageIdx], pageMask)
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 18 21:25:11 UTC 2024
    - 52.5K bytes
    - Viewed (0)
  3. src/runtime/mbitmap.go

    }
    
    // isMarked reports whether mark bit m is set.
    func (m markBits) isMarked() bool {
    	return *m.bytep&m.mask != 0
    }
    
    // setMarked sets the marked bit in the markbits, atomically.
    func (m markBits) setMarked() {
    	// Might be racing with other updates, so use atomic update always.
    	// We used to be clever here and use a non-atomic update in certain
    	// cases, but it's not worth the risk.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 00:18:55 UTC 2024
    - 60K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ir/mini.go

    	if x > 2 {
    		panic(fmt.Sprintf("cannot SetTypecheck %d", x))
    	}
    	n.bits.set2(miniTypecheckShift, x)
    }
    
    func (n *miniNode) Walked() bool     { return n.bits&miniWalked != 0 }
    func (n *miniNode) SetWalked(x bool) { n.bits.set(miniWalked, x) }
    
    // Empty, immutable graph structure.
    
    func (n *miniNode) Init() Nodes { return Nodes{} }
    
    // Additional functionality unavailable.
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Aug 31 22:09:44 UTC 2022
    - 2.8K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/walk/closure.go

    	//
    	// Don't add the closure function to compilation queue more than once, since when
    	// compiling a function twice would lead to an ICE.
    	if !clofn.Walked() {
    		clofn.SetWalked(true)
    		ir.CurFunc.Closures = append(ir.CurFunc.Closures, clofn)
    	}
    
    	typ := typecheck.ClosureType(clo)
    
    	clos := ir.NewCompLitExpr(base.Pos, ir.OCOMPLIT, typ, nil)
    	clos.SetEsc(clo.Esc())
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Nov 20 15:56:08 UTC 2023
    - 6.5K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/walk/select.go

    	"cmd/compile/internal/types"
    	"cmd/internal/src"
    )
    
    func walkSelect(sel *ir.SelectStmt) {
    	lno := ir.SetPos(sel)
    	if sel.Walked() {
    		base.Fatalf("double walkSelect")
    	}
    	sel.SetWalked(true)
    
    	init := ir.TakeInit(sel)
    
    	init = append(init, walkSelectCases(sel.Cases)...)
    	sel.Cases = nil
    
    	sel.Compiled = init
    	walkStmtList(sel.Compiled)
    
    	base.Pos = lno
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Aug 22 01:53:41 UTC 2023
    - 7.8K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/walk/expr.go

    		}
    	}
    
    	walkCall1(n, init)
    	return n
    }
    
    func walkCall1(n *ir.CallExpr, init *ir.Nodes) {
    	if n.Walked() {
    		return // already walked
    	}
    	n.SetWalked(true)
    
    	if n.Op() == ir.OCALLMETH {
    		base.FatalfAt(n.Pos(), "OCALLMETH missed by typecheck")
    	}
    
    	args := n.Args
    	params := n.Fun.Type().Params()
    
    	n.Fun = walkExpr(n.Fun, init)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:34:01 UTC 2024
    - 27.6K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/walk/switch.go

    func walkSwitch(sw *ir.SwitchStmt) {
    	// Guard against double walk, see #25776.
    	if sw.Walked() {
    		return // Was fatal, but eliminating every possible source of double-walking is hard
    	}
    	sw.SetWalked(true)
    
    	if sw.Tag != nil && sw.Tag.Op() == ir.OTYPESW {
    		walkSwitchType(sw)
    	} else {
    		walkSwitchExpr(sw)
    	}
    }
    
    // walkSwitchExpr generates an AST implementing sw.  sw is an
    // expression switch.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:34:01 UTC 2024
    - 30.1K bytes
    - Viewed (0)
Back to top