Search Options

Results per page
Sort
Preferred Languages
Advance

Results 11 - 20 of 874 for spill (0.21 sec)

  1. src/cmd/internal/obj/x86/obj6.go

    	// we are still in function prologue. We need to fix the
    	// SP data and PCDATA.
    	spfix := obj.Appendp(last, newprog)
    	spfix.As = obj.ANOP
    	spfix.Spadj = -framesize
    
    	pcdata := ctxt.EmitEntryStackMap(cursym, spfix, newprog)
    	spill := ctxt.StartUnsafePoint(pcdata, newprog)
    	pcdata = cursym.Func().SpillRegisterArgs(spill, newprog)
    
    	call := obj.Appendp(pcdata, newprog)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 08 18:36:45 UTC 2023
    - 40.9K bytes
    - Viewed (0)
  2. src/cmd/internal/obj/ppc64/obj9.go

    	p.As = obj.ANOP // zero-width place holder
    
    	if q != nil {
    		q.To.SetTarget(p)
    	}
    
    	// Spill the register args that could be clobbered by the
    	// morestack code.
    
    	spill := c.cursym.Func().SpillRegisterArgs(p, c.newprog)
    
    	// MOVD LR, R5
    	p = obj.Appendp(spill, c.newprog)
    	p.As = AMOVD
    	p.From.Type = obj.TYPE_REG
    	p.From.Reg = REG_LR
    	p.To.Type = obj.TYPE_REG
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 18:17:17 UTC 2024
    - 40.8K bytes
    - Viewed (0)
  3. src/cmd/internal/obj/loong64/obj.go

    	add = AADDV
    	mov = AMOVV
    	if c.ctxt.Flag_maymorestack != "" {
    		// Save LR and REGCTXT.
    		frameSize := 2 * c.ctxt.Arch.PtrSize
    
    		p = c.ctxt.StartUnsafePoint(p, c.newprog)
    
    		// Spill Arguments. This has to happen before we open
    		// any more frame space.
    		p = c.cursym.Func().SpillRegisterArgs(p, c.newprog)
    
    		// MOV	REGLINK, -8/-16(SP)
    		p = obj.Appendp(p, c.newprog)
    		p.As = mov
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Nov 21 19:22:18 UTC 2023
    - 19.7K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/_gen/genericOps.go

    	{name: "ArraySelect", argLength: 1, aux: "Int64"}, // arg0=array, auxint=index. Returns a[i].
    
    	// Spill&restore ops for the register allocator. These are
    	// semantically identical to OpCopy; they do not take/return
    	// stores like regular memory ops do. We can get away without memory
    	// args because we know there is no aliasing of spill slots on the stack.
    	{name: "StoreReg", argLength: 1},
    	{name: "LoadReg", argLength: 1},
    
    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/ssagen/pgen.go

    	for i, n := range fn.Dcl {
    		if n.Op() != ir.ONAME || n.Class != ir.PAUTO && !(n.Class == ir.PPARAMOUT && n.IsOutputParamInRegisters()) {
    			// i.e., stack assign if AUTO, or if PARAMOUT in registers (which has no predefined spill locations)
    			continue
    		}
    		if mls != nil && mls.Subsumed(n) {
    			continue
    		}
    		if !n.Used() {
    			fn.DebugInfo.(*ssa.FuncDebug).OptDcl = fn.Dcl[i:]
    			fn.Dcl = fn.Dcl[:i]
    			break
    		}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 15 15:44:14 UTC 2024
    - 13.1K bytes
    - Viewed (0)
  6. src/cmd/internal/obj/arm64/obj7.go

    	pcdata = c.ctxt.StartUnsafePoint(pcdata, c.newprog)
    
    	if q != nil {
    		q.To.SetTarget(pcdata)
    	}
    	bls.To.SetTarget(pcdata)
    
    	spill := c.cursym.Func().SpillRegisterArgs(pcdata, c.newprog)
    
    	// MOV	LR, R3
    	movlr := obj.Appendp(spill, c.newprog)
    	movlr.As = AMOVD
    	movlr.From.Type = obj.TYPE_REG
    	movlr.From.Reg = REGLINK
    	movlr.To.Type = obj.TYPE_REG
    	movlr.To.Reg = REG_R3
    
    	debug := movlr
    	if false {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Nov 08 05:46:32 UTC 2023
    - 28.4K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/ssa/func.go

    	// RegArgs is a slice of register-memory pairs that must be spilled and unspilled in the uncommon path of function entry.
    	RegArgs []Spill
    	// OwnAux describes parameters and results for this function.
    	OwnAux *AuxCall
    	// CloSlot holds the compiler-synthesized name (".closureptr")
    	// where we spill the closure pointer for range func bodies.
    	CloSlot *ir.Name
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 25.8K bytes
    - Viewed (0)
  8. test/codegen/comparisons.go

    }
    func cmpstring2(x, y string) int {
    	// We want to fail if there are two calls to cmpstring.
    	// They will both have the same line number, so a test
    	// like in cmpstring1 will not work. Instead, we
    	// look for spill/restore instructions, which only
    	// need to exist if there are 2 calls.
    	//amd64:-`MOVQ\t.*\(SP\)`
    	return cmp.Compare(x, y)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 19 16:31:02 UTC 2024
    - 15.2K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssa/schedule.go

    			if v.Op == OpSPanchored {
    				// Free this value
    				if v.Uses != 0 {
    					base.Fatalf("SPAnchored still has %d uses", v.Uses)
    				}
    				v.resetArgs()
    				f.freeValue(v)
    			} else {
    				if opcodeTable[v.Op].nilCheck {
    					if v.Uses != 0 {
    						base.Fatalf("nilcheck still has %d uses", v.Uses)
    					}
    					// We can't delete the nil check, but we mark
    					// it as having void type so regalloc won't
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 08 15:53:17 UTC 2024
    - 16.4K bytes
    - Viewed (0)
  10. src/cmd/compile/internal/ssa/op.go

    	return c.registers[m].objNum
    }
    
    // ArgWidth returns the amount of stack needed for all the inputs
    // and outputs of a function or method, including ABI-defined parameter
    // slots and ABI-defined spill slots for register-resident parameters.
    //
    // The name is taken from the types package's ArgWidth(<function type>),
    // which predated changes to the ABI; this version handles those changes.
    func (a *AuxCall) ArgWidth() int64 {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 22 15:29:10 UTC 2024
    - 18.7K bytes
    - Viewed (0)
Back to top