Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 2 of 2 for IsStackAddr (0.21 sec)

  1. src/cmd/compile/internal/ssa/writebarrier.go

    }
    
    // round to a multiple of r, r is a power of 2.
    func round(o int64, r int64) int64 {
    	return (o + r - 1) &^ (r - 1)
    }
    
    // IsStackAddr reports whether v is known to be an address of a stack slot.
    func IsStackAddr(v *Value) bool {
    	for v.Op == OpOffPtr || v.Op == OpAddPtr || v.Op == OpPtrIndex || v.Op == OpCopy {
    		v = v.Args[0]
    	}
    	switch v.Op {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 08 19:09:14 UTC 2023
    - 23.5K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssagen/ssa.go

    // do *left = right for type t.
    func (s *state) storeType(t *types.Type, left, right *ssa.Value, skip skipMask, leftIsStmt bool) {
    	s.instrument(t, left, instrumentWrite)
    
    	if skip == 0 && (!t.HasPointers() || ssa.IsStackAddr(left)) {
    		// Known to not have write barrier. Store the whole type.
    		s.vars[memVar] = s.newValue3Apos(ssa.OpStore, types.TypeMem, t, left, right, s.mem(), leftIsStmt)
    		return
    	}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 284.9K bytes
    - Viewed (0)
Back to top