- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 79 for Live (0.55 sec)
-
src/cmd/compile/internal/ssa/stackalloc.go
s.interfere = s.interfere[:n] } else { s.interfere = make([][]ID, n) } live := f.newSparseSet(f.NumValues()) defer f.retSparseSet(live) for _, b := range f.Blocks { // Propagate liveness backwards to the start of the block. // Two values interfere if one is defined while the other is live. live.clear() live.addAll(s.live[b.ID]) for i := len(b.Values) - 1; i >= 0; i-- { v := b.Values[i]
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Feb 29 21:29:41 UTC 2024 - 12.6K bytes - Viewed (0) -
src/cmd/compile/internal/liveness/intervals.go
// candidate variable), by making a // backwards sweep and invoking the Live/Kill methods to note the // starts and end of a given lifetime. For the example above, we would // expect to see this sequence of calls to Live/Kill: // // abc: Live(9), Kill(8), Live(6), Kill(0) // xyz: Live(8), Kill(2) import ( "fmt" "os" "strings" ) const debugtrace = false
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Mar 29 21:55:27 UTC 2024 - 10K bytes - Viewed (0) -
src/cmd/compile/internal/liveness/plive.go
// Check to make sure only input variables are live. for i, n := range lv.vars { if !liveout.Get(int32(i)) { continue } if n.Class == ir.PPARAM { continue // ok } base.FatalfAt(n.Pos(), "bad live variable at entry of %v: %L", lv.fn.Nname, n) } // Record live variables. live := &lv.livevars[index] live.Or(*live, liveout) } if lv.doClobber {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 15:22:22 UTC 2024 - 45.2K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/check.go
f.Fatalf("memory is first in a tuple: %s\n", v.LongString()) } } } // Single live memory checks. // These checks only work if there are no memory copies. // (Memory copies introduce ambiguity about which mem value is really live. // probably fixable, but it's easier to avoid the problem.) // For the same reason, disable this check if some memory ops are unused.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Apr 09 16:41:23 UTC 2024 - 17.6K bytes - Viewed (0) -
src/cmd/covdata/tool_test.go
if len(lines) == 1 && lines[0] == "" { lines = nil } return lines } func testDump(t *testing.T, s state) { // Run the dumper on the two dirs we generated. dargs := []string{"-pkg=" + mainPkgPath, "-live", "-i=" + s.outdirs[0] + "," + s.outdirs[1]} lines := runToolOp(t, s, "debugdump", dargs) // Sift through the output to make sure it has some key elements. testpoints := []struct { tag string
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu Mar 07 20:46:32 UTC 2024 - 24.5K bytes - Viewed (0) -
src/cmd/covdata/dump.go
func makeDumpOp(cmd string) covOperation { if cmd == textfmtMode || cmd == percentMode { textfmtoutflag = flag.String("o", "", "Output text format to file") } if cmd == debugDumpMode { liveflag = flag.Bool("live", false, "Select only live (executed) functions for dump output.") } d := &dstate{ cmd: cmd, cm: &cmerge.Merger{}, } // For these modes (percent, pkglist, func, etc), use a relaxed
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 23 11:36:57 UTC 2023 - 11.2K bytes - Viewed (0) -
src/cmd/compile/internal/walk/range.go
// or the other of hp and hu as the loop proceeds. // // hp is live during most of the body of the loop. But it isn't live // at the very top of the loop, when we haven't checked i<n yet, and // it could point off the end of the backing store. // hu is live only at the very top and very bottom of the loop. // In particular, only when it cannot possibly be live across a call. // // So we do
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed Sep 20 14:52:33 UTC 2023 - 17.6K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/schedule.go
// 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) -
src/cmd/compile/internal/ssagen/phi.go
v := s.fwdrefs[len(s.fwdrefs)-1] s.fwdrefs = s.fwdrefs[:len(s.fwdrefs)-1] b := v.Block var_ := v.Aux.(fwdRefAux).N if b == s.f.Entry { // No variable should be live at entry. s.s.Fatalf("value %v (%v) incorrectly live at entry", var_, v) } if !s.reachable[b.ID] { // This block is dead. // It doesn't matter what we use here as long as it is well-formed. v.Op = ssa.OpUnknown v.Aux = nil
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Nov 18 17:59:44 UTC 2022 - 15.2K bytes - Viewed (0) -
src/cmd/internal/dwarf/dwarf.go
ic := &calls.Calls[slot] if ic.InlIndex == -2 { return true } live := false for _, k := range ic.Children { if !isEmptyInlinedCall(k, calls) { live = true } } if len(ic.Ranges) > 0 { live = true } if !live { ic.InlIndex = -2 } return !live } // Slot -1: return top-level inlines. // Slot >= 0: return children of that slot.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed Mar 06 15:23:18 UTC 2024 - 43K bytes - Viewed (0)