Search Options

Results per page
Sort
Preferred Languages
Advance

Results 21 - 28 of 28 for GCWriteBarrier (0.35 sec)

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

    		return
    	}
    
    	// Number of write buffer entries we can request at once.
    	// Must match runtime/mwbbuf.go:wbMaxEntriesPerCall.
    	// It must also match the number of instances of runtime.gcWriteBarrier{X}.
    	const maxEntries = 8
    
    	var sb, sp, wbaddr, const0 *Value
    	var cgoCheckPtrWrite, cgoCheckMemmove *obj.LSym
    	var wbZero, wbMove *obj.LSym
    	var stores, after []*Value
    	var sset, sset2 *sparseSet
    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/ssa/_gen/RISCV64Ops.go

    		// the result should be the PC within f that g will return to.
    		// See runtime/stubs.go for a more detailed discussion.
    		{name: "LoweredGetCallerPC", reg: gp01, rematerializeable: true},
    
    		// LoweredWB invokes runtime.gcWriteBarrier. arg0=mem, auxint=# of buffer entries needed
    		// It saves all GP registers if necessary,
    		// but clobbers RA (LR) because it's a call
    		// and T6 (REG_TMP).
    		// Returns a pointer to a write barrier buffer in X24.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Mar 07 14:57:07 UTC 2024
    - 30.7K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssagen/ssa.go

    	ir.Syms.Duffzero = typecheck.LookupRuntimeFunc("duffzero")
    	ir.Syms.GCWriteBarrier[0] = typecheck.LookupRuntimeFunc("gcWriteBarrier1")
    	ir.Syms.GCWriteBarrier[1] = typecheck.LookupRuntimeFunc("gcWriteBarrier2")
    	ir.Syms.GCWriteBarrier[2] = typecheck.LookupRuntimeFunc("gcWriteBarrier3")
    	ir.Syms.GCWriteBarrier[3] = typecheck.LookupRuntimeFunc("gcWriteBarrier4")
    	ir.Syms.GCWriteBarrier[4] = typecheck.LookupRuntimeFunc("gcWriteBarrier5")
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 284.9K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/_gen/genericOps.go

    	{name: "WBend", argLength: 1, typ: "Mem"},                  // Write barrier code is done, interrupting is now allowed.
    
    	// WB invokes runtime.gcWriteBarrier.  This is not a normal
    	// call: it takes arguments in registers, doesn't clobber
    	// general-purpose registers (the exact clobber set is
    	// arch-dependent), and is not a safe-point.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 15:49:20 UTC 2024
    - 42.6K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/_gen/PPC64Ops.go

    		{name: "LoweredAtomicOr32", argLength: 3, reg: gpstore, asm: "OR", faultOnNilArg0: true, hasSideEffects: true},
    
    		// LoweredWB invokes runtime.gcWriteBarrier. arg0=mem, auxint=# of buffer entries needed
    		// It preserves R0 through R17 (except special registers R1, R2, R11, R12, R13), g, and R20 and R21,
    		// but may clobber anything else, including R31 (REGTMP).
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 19:59:38 UTC 2024
    - 43.8K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/ssa/_gen/ARM64Ops.go

    		{name: "LoweredAtomicOr32Variant", argLength: 3, reg: gpxchg, resultNotInArgs: true, faultOnNilArg0: true, hasSideEffects: true},
    
    		// LoweredWB invokes runtime.gcWriteBarrier. arg0=mem, auxint=# of buffer entries needed
    		// It saves all GP registers if necessary,
    		// but clobbers R30 (LR) because it's a call.
    		// R16 and R17 may be clobbered by linker trampoline.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 15:49:20 UTC 2024
    - 58.8K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/ppc64/ssa.go

    		}
    
    	case ssa.OpPPC64LoweredWB:
    		p := s.Prog(obj.ACALL)
    		p.To.Type = obj.TYPE_MEM
    		p.To.Name = obj.NAME_EXTERN
    		// AuxInt encodes how many buffer entries we need.
    		p.To.Sym = ir.Syms.GCWriteBarrier[v.AuxInt-1]
    
    	case ssa.OpPPC64LoweredPanicBoundsA, ssa.OpPPC64LoweredPanicBoundsB, ssa.OpPPC64LoweredPanicBoundsC:
    		p := s.Prog(obj.ACALL)
    		p.To.Type = obj.TYPE_MEM
    		p.To.Name = obj.NAME_EXTERN
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 19:59:38 UTC 2024
    - 55.4K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/_gen/AMD64Ops.go

    		//arg0=ptr,arg1=mem, returns void.  Faults if ptr is nil.
    		{name: "LoweredNilCheck", argLength: 2, reg: regInfo{inputs: []regMask{gpsp}}, clobberFlags: true, nilCheck: true, faultOnNilArg0: true},
    		// LoweredWB invokes runtime.gcWriteBarrier{auxint}. arg0=mem, auxint=# of buffer entries needed.
    		// It saves all GP registers if necessary, but may clobber others.
    		// Returns a pointer to a write barrier buffer in R11.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Aug 04 16:40:24 UTC 2023
    - 98K bytes
    - Viewed (1)
Back to top