Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 10 for stackalloc (0.15 sec)

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

    	spill    *Value
    	needSlot bool
    	isArg    bool
    }
    
    // stackalloc allocates storage in the stack frame for
    // all Values that did not get a register.
    // Returns a map from block ID to the stack values live at the end of that block.
    func stackalloc(f *Func, spillLive [][]ID) [][]ID {
    	if f.pass.debug > stackDebug {
    		fmt.Println("before stackalloc")
    		fmt.Println(f.String())
    	}
    	s := newStackAllocState(f)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Feb 29 21:29:41 UTC 2024
    - 12.6K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/cache.go

    type Cache struct {
    	// Storage for low-numbered values and blocks.
    	values [2000]Value
    	blocks [200]Block
    	locs   [2000]Location
    
    	// Reusable stackAllocState.
    	// See stackalloc.go's {new,put}StackAllocState.
    	stackAllocState *stackAllocState
    
    	scrPoset []*poset // scratch poset to be reused
    
    	// Reusable regalloc state.
    	regallocValues []valState
    
    	ValueToProgAfter []*obj.Prog
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Feb 15 23:00:54 UTC 2023
    - 1.6K bytes
    - Viewed (0)
  3. src/cmd/cgo/internal/test/sigaltstack.go

    	// The Darwin C library enforces a minimum that the kernel does not.
    	// This is OK since we allocated this much space in mpreinit,
    	// it was just removed from the buffer by stackalloc.
    	oss.ss_size = MINSIGSTKSZ;
    #endif
    	if (sigaltstack(&oss, NULL) < 0) {
    		perror("sigaltstack restore");
    		abort();
    	}
    }
    
    static int zero(void) {
    	return 0;
    }
    */
    import "C"
    
    import (
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 12 12:00:02 UTC 2023
    - 1.7K bytes
    - Viewed (0)
  4. src/runtime/stack.go

    		unlock(&stackpool[order].item.mu)
    	}
    }
    
    // stackalloc allocates an n byte stack.
    //
    // stackalloc must run on the system stack because it uses per-P
    // resources and must not split the stack.
    //
    //go:systemstack
    func stackalloc(n uint32) stack {
    	// Stackalloc must be called on scheduler stack, so that we
    	// never try to grow the stack during the code that stackalloc runs.
    	// Doing so would cause a deadlock (issue 1547).
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 41.1K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/regalloc.go

    			}
    		}
    
    		// If a value is live at the end of the block and
    		// isn't in a register, generate a use for the spill location.
    		// We need to remember this information so that
    		// the liveness analysis in stackalloc is correct.
    		for _, e := range s.live[b.ID] {
    			vi := &s.values[e.ID]
    			if vi.regs != 0 {
    				// in a register, we'll use that source for the merge.
    				continue
    			}
    			if vi.rematerializeable {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Nov 21 17:49:56 UTC 2023
    - 87.2K bytes
    - Viewed (0)
  6. src/runtime/proc.go

    	} else {
    		maxstacksize = 250000000
    	}
    
    	// An upper limit for max stack size. Used to avoid random crashes
    	// after calling SetMaxStack and trying to allocate a stack that is too big,
    	// since stackalloc works with 32-bit sizes.
    	maxstackceiling = 2 * maxstacksize
    
    	// Allow newproc to start new Ms.
    	mainStarted = true
    
    	if haveSysmon {
    		systemstack(func() {
    			newm(sysmon, nil, -1)
    		})
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 207.5K bytes
    - Viewed (0)
  7. src/runtime/os_nonopenbsd.go

    // license that can be found in the LICENSE file.
    
    //go:build !openbsd
    
    package runtime
    
    // osStackAlloc performs OS-specific initialization before s is used
    // as stack memory.
    func osStackAlloc(s *mspan) {
    }
    
    // osStackFree undoes the effect of osStackAlloc before s is returned
    // to the heap.
    func osStackFree(s *mspan) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 28 18:17:57 UTC 2021
    - 437 bytes
    - Viewed (0)
  8. src/runtime/os_openbsd.go

    	setProcessCPUProfilerTimer(hz)
    }
    
    func setThreadCPUProfiler(hz int32) {
    	setThreadCPUProfilerHz(hz)
    }
    
    //go:nosplit
    func validSIGPROF(mp *m, c *sigctxt) bool {
    	return true
    }
    
    func osStackAlloc(s *mspan) {
    	osStackRemap(s, _MAP_STACK)
    }
    
    func osStackFree(s *mspan) {
    	// Undo MAP_STACK.
    	osStackRemap(s, 0)
    }
    
    func osStackRemap(s *mspan, flags int32) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 6.2K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssagen/ssa.go

    		default:
    			s.Fatalf("bad unsigned index extension %s", idx.Type)
    		}
    	}
    	return s.newValue1(op, types.Types[types.TINT], idx)
    }
    
    // CheckLoweredPhi checks that regalloc and stackalloc correctly handled phi values.
    // Called during ssaGenValue.
    func CheckLoweredPhi(v *ssa.Value) {
    	if v.Op != ssa.OpPhi {
    		v.Fatalf("CheckLoweredPhi called with non-phi value: %v", v.LongString())
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 284.9K bytes
    - Viewed (0)
  10. src/regexp/testdata/testregex.c

    	sfprintf(dp->sp, "{%-.*s}(%lu:%d)", xlen, xstr, (char*)data - (char*)0, slen);
    	return atoi(xstr);
    }
    
    static void*
    resizef(void* handle, void* data, size_t size)
    {
    	if (!size)
    		return 0;
    	return stkalloc((Sfio_t*)handle, size);
    }
    
    #endif
    
    #ifndef NiL
    #ifdef	__STDC__
    #define NiL		0
    #else
    #define NiL		(char*)0
    #endif
    #endif
    
    #define H(x)		do{if(html)fprintf(stderr,x);}while(0)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Sep 08 04:08:51 UTC 2014
    - 51.3K bytes
    - Viewed (0)
Back to top