Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 690 for spill (0.06 sec)

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

    	)
    	flagalloc(f.f)
    	regalloc(f.f)
    	checkFunc(f.f)
    	// There should be a spill in loop1, and nowhere else.
    	// TODO: resurrect moving spills out of loops? We could put spills at the start of both exit1 and exit2.
    	if numSpills(f.blocks["loop1"]) != 1 {
    		t.Errorf("spill missing from loop1")
    	}
    	if numSpills(f.blocks["loop2"]) != 0 {
    		t.Errorf("spill present in loop2")
    	}
    	if numSpills(f.blocks["exit1"]) != 0 {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 08 19:09:14 UTC 2023
    - 6.3K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/flagalloc.go

    			}
    			if v.Type.IsFlags() {
    				flag = v
    			}
    		}
    		for _, v := range b.ControlValues() {
    			if v != flag && v.Type.IsFlags() {
    				spill[v.ID] = true
    			}
    		}
    		if v := end[b.ID]; v != nil && v != flag {
    			spill[v.ID] = true
    		}
    	}
    
    	// Add flag spill and recomputation where they are needed.
    	var remove []*Value // values that should be checked for possible removal
    	var oldSched []*Value
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Oct 31 21:41:20 UTC 2022
    - 6.7K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/test/memcombine_test.go

    func readUint16le(b []byte) uint64 {
    	y := uint64(binary.LittleEndian.Uint16(b))
    	nop() // force spill
    	return y
    }
    
    func readUint16be(b []byte) uint64 {
    	y := uint64(binary.BigEndian.Uint16(b))
    	nop() // force spill
    	return y
    }
    
    func readUint32le(b []byte) uint64 {
    	y := uint64(binary.LittleEndian.Uint32(b))
    	nop() // force spill
    	return y
    }
    
    func readUint32be(b []byte) uint64 {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Nov 30 18:35:50 UTC 2023
    - 4.5K bytes
    - Viewed (0)
  4. test/fixedbugs/issue59367.go

    	_ = b[1]            // bounds check
    	x := *p             // load a byte
    	y := uint16(x)      // zero extend to 16 bits
    	b[0] = byte(y >> 8) // compute ROLW
    	b[1] = byte(y)
    	nop()               // spill/restore ROLW
    	b[0] = byte(y >> 8) // use ROLW
    	b[1] = byte(y)
    }
    
    //go:noinline
    func f32(p *uint8, b []byte) {
    	_ = b[3]             // bounds check
    	x := *p              // load a byte
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 07 21:11:29 UTC 2023
    - 1.7K bytes
    - Viewed (0)
  5. src/internal/trace/reader.go

    )
    
    // Reader reads a byte stream, validates it, and produces trace events.
    type Reader struct {
    	r           *bufio.Reader
    	lastTs      Time
    	gen         *generation
    	spill       *spilledBatch
    	spillErr    error // error from reading spill
    	frontier    []*batchCursor
    	cpuSamples  []cpuSample
    	order       ordering
    	emittedSync bool
    
    	go121Events *oldTraceConverter
    }
    
    // NewReader creates a new trace reader.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 17 18:48:18 UTC 2024
    - 6.7K bytes
    - Viewed (0)
  6. src/runtime/mfinal_test.go

    		// Test case for argument spill slot.
    		// If the spill slot was not counted for the frame size, it will (incorrectly) choose
    		// call32 as the result has (exactly) 32 bytes. When the argument actually spills,
    		// it clobbers the caller's frame (likely the return PC).
    		{func(x *int) any { return x }, func(v any) [4]int64 {
    			print() // force spill
    			finalize(v.(*int))
    			return [4]int64{}
    		}},
    	}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Jan 19 20:45:58 UTC 2023
    - 5.6K bytes
    - Viewed (0)
  7. test/codegen/stack.go

    // Notes:
    // - 386 fails due to spilling a register
    // amd64:"TEXT\t.*, [$]0-"
    // arm:"TEXT\t.*, [$]0-" (spills return address)
    // arm64:"TEXT\t.*, [$]0-"
    // ppc64x:"TEXT\t.*, [$]0-"
    // s390x:"TEXT\t.*, [$]0-"
    // Note: that 386 currently has to spill a register.
    func KeepWanted(t *T) {
    	*t = T{A: t.A, B: t.B, C: t.C, D: t.D}
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Feb 29 21:29:41 UTC 2024
    - 3.4K bytes
    - Viewed (0)
  8. test/codegen/issue61356.go

    // asmcheck
    
    // Copyright 2023 The Go Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style
    // license that can be found in the LICENSE file.
    
    // Make sure this code doesn't generate spill/restore.
    
    package codegen
    
    func pack20(in *[20]uint64) uint64 {
    	var out uint64
    	out |= 4
    	// amd64:-`.*SP.*`
    	out |= in[0] << 4
    	// amd64:-`.*SP.*`
    	out |= in[1] << 7
    	// amd64:-`.*SP.*`
    	out |= in[2] << 10
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Jul 26 17:19:14 UTC 2023
    - 1.1K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssagen/arch.go

    	// memory. Used in open-coded defer return path.
    	LoadRegResult func(s *State, f *ssa.Func, t *types.Type, reg int16, n *ir.Name, off int64) *obj.Prog
    
    	// SpillArgReg emits instructions that spill reg to n+off.
    	SpillArgReg func(pp *objw.Progs, p *obj.Prog, f *ssa.Func, t *types.Type, reg int16, n *ir.Name, off int64) *obj.Prog
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Aug 03 21:05:55 UTC 2021
    - 1.5K bytes
    - Viewed (0)
  10. test/abi/many_intstar_input.go

    }
    
    //go:registerparams
    //go:noinline
    func G(a, b, c, d, e, f *int) {
    	var scratch [1000 * 100]int
    	scratch[*a] = *f                    // scratch[6] = 1
    	fmt.Println(*a, *b, *c, *d, *e, *f) // Forces it to spill b
    	sink = scratch[*b+1]                // scratch[5+1] == 1
    	*f, *a = *a, *f
    	*e, *b = *b, *e
    	*d, *c = *c, *d
    }
    
    func main() {
    	a, b, c, d, e, f := 1, 2, 3, 4, 5, 6
    	F(&a, &b, &c, &d, &e, &f)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 19 23:33:25 UTC 2023
    - 967 bytes
    - Viewed (0)
Back to top