Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 24 for NumValues (0.16 sec)

  1. pkg/queue/instance_test.go

    			wg.Done()
    			return nil
    		})
    
    		// Start the queue at the halfway point.
    		if i == numValues/2 {
    			go q.Run(stop)
    		}
    	}
    
    	// wait for all task processed
    	wg.Wait()
    
    	if len(out) != numValues {
    		t.Fatalf("expected output array length %d to equal %d", len(out), numValues)
    	}
    
    	for i := 0; i < numValues; i++ {
    		if i != out[i] {
    			t.Fatalf("expected out[%d] %v to equal %v", i, out[i], i)
    		}
    	}
    }
    Registered: Fri Jun 14 15:00:06 UTC 2024
    - Last Modified: Fri Jul 21 16:30:36 UTC 2023
    - 3.4K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/stackalloc.go

    	// the slot we used via an index into locations[v.Type].
    	slots := f.Cache.allocIntSlice(f.NumValues())
    	defer f.Cache.freeIntSlice(slots)
    	for i := range slots {
    		slots[i] = -1
    	}
    
    	// Pick a stack slot for each value needing one.
    	used := f.Cache.allocBoolSlice(f.NumValues())
    	defer f.Cache.freeBoolSlice(used)
    	for _, b := range f.Blocks {
    		for _, v := range b.Values {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Feb 29 21:29:41 UTC 2024
    - 12.6K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/deadcode.go

    // when they are done with the return values.
    func liveValues(f *Func, reachable []bool) (live []bool, liveOrderStmts []*Value) {
    	live = f.Cache.allocBoolSlice(f.NumValues())
    	liveOrderStmts = f.Cache.allocValueSlice(f.NumValues())[:0]
    
    	// After regalloc, consider all values to be live.
    	// See the comment at the top of regalloc.go and in deadcode for details.
    	if f.RegAlloc != nil {
    		for i := range live {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Dec 08 00:29:01 UTC 2023
    - 9.2K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/nilcheck.go

    						}
    						nonNilValues[v.ID] = v
    					}
    				}
    			}
    		}
    	}
    
    	// allocate auxiliary date structures for computing store order
    	sset := f.newSparseSet(f.NumValues())
    	defer f.retSparseSet(sset)
    	storeNumber := f.Cache.allocInt32Slice(f.NumValues())
    	defer f.Cache.freeInt32Slice(storeNumber)
    
    	// perform a depth first walk of the dominee tree
    	for len(work) > 0 {
    		node := work[len(work)-1]
    		work = work[:len(work)-1]
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Oct 31 20:45:54 UTC 2023
    - 11.3K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/tighten.go

    		// Too many values live across blocks can cause pathological
    		// behavior in the register allocator (see issue 52180).
    		return
    	}
    
    	canMove := f.Cache.allocBoolSlice(f.NumValues())
    	defer f.Cache.freeBoolSlice(canMove)
    
    	// Compute the memory states of each block.
    	startMem := f.Cache.allocValueSlice(f.NumBlocks())
    	defer f.Cache.freeValueSlice(startMem)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 16 01:01:38 UTC 2023
    - 7.7K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/ssa/cse.go

    	// It starts with a coarse partition and iteratively refines it
    	// until it reaches a fixed point.
    
    	// Make initial coarse partitions by using a subset of the conditions above.
    	a := f.Cache.allocValueSlice(f.NumValues())
    	defer func() { f.Cache.freeValueSlice(a) }() // inside closure to use final value of a
    	a = a[:0]
    	if f.auxmap == nil {
    		f.auxmap = auxmap{}
    	}
    	for _, b := range f.Blocks {
    		for _, v := range b.Values {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Oct 31 21:41:20 UTC 2022
    - 9.6K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/ssa/schedule_test.go

    			Valu("v", OpConst64, c.config.Types.Int64, 12, nil),
    			Goto("exit")),
    		Bloc("exit",
    			Exit("mem2")))
    
    	CheckFunc(fun.f)
    	order := storeOrder(fun.f.Blocks[0].Values, fun.f.newSparseSet(fun.f.NumValues()), make([]int32, fun.f.NumValues()))
    
    	// check that v2, v3, v4 is sorted after v5
    	var ai, bi, ci, si int
    	for i, v := range order {
    		switch v.ID {
    		case 2:
    			ai = i
    		case 3:
    			bi = i
    		case 4:
    			ci = i
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Sat Oct 08 01:46:00 UTC 2022
    - 5.6K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/deadstore.go

    func dse(f *Func) {
    	var stores []*Value
    	loadUse := f.newSparseSet(f.NumValues())
    	defer f.retSparseSet(loadUse)
    	storeUse := f.newSparseSet(f.NumValues())
    	defer f.retSparseSet(storeUse)
    	shadowed := f.newSparseMap(f.NumValues())
    	defer f.retSparseMap(shadowed)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 25 20:07:26 UTC 2024
    - 11K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssa/schedule.go

    func schedule(f *Func) {
    	// reusable priority queue
    	priq := new(ValHeap)
    
    	// "priority" for a value
    	score := f.Cache.allocInt8Slice(f.NumValues())
    	defer f.Cache.freeInt8Slice(score)
    
    	// maps mem values to the next live memory value
    	nextMem := f.Cache.allocValueSlice(f.NumValues())
    	defer f.Cache.freeValueSlice(nextMem)
    
    	// inBlockUses records whether a value is used in the block
    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/print.go

    	fmt.Fprintf(p.w, "name %s: %v\n", n, vals)
    }
    
    func fprintFunc(p funcPrinter, f *Func) {
    	reachable, live := findlive(f)
    	defer f.Cache.freeBoolSlice(live)
    	p.header(f)
    	printed := make([]bool, f.NumValues())
    	for _, b := range f.Blocks {
    		p.startBlock(b, reachable[b.ID])
    
    		if f.scheduled {
    			// Order of Values has been decided - print in that order.
    			for _, v := range b.Values {
    				p.value(v, live[v.ID])
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Oct 31 21:41:20 UTC 2022
    - 3.9K bytes
    - Viewed (0)
Back to top