- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 10 for Succs (0.05 sec)
-
src/cmd/compile/internal/ssa/layout.go
bid = cid continue blockloop } } // Still nothing, pick the unscheduled successor block encountered most recently. for len(succs) > 0 { // Pop an element from the tail of the queue. cid := succs[len(succs)-1] succs = succs[:len(succs)-1] if !scheduled[cid] { bid = cid continue blockloop } } // Still nothing, pick any non-exit block.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Oct 31 21:41:20 UTC 2022 - 5K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/fuse.go
var ss0, ss1 *Block s0 := b.Succs[0].b i0 := b.Succs[0].i if s0.Kind != BlockPlain || !isEmpty(s0) { s0, ss0 = b, s0 } else { ss0 = s0.Succs[0].b i0 = s0.Succs[0].i } s1 := b.Succs[1].b i1 := b.Succs[1].i if s1.Kind != BlockPlain || !isEmpty(s1) { s1, ss1 = b, s1 } else { ss1 = s1.Succs[0].b i1 = s1.Succs[0].i } if ss0 != ss1 {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Oct 31 20:45:54 UTC 2023 - 9K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/trim.go
// order, in which the predecessors edges are merged here. p, i := b.Preds[0].b, b.Preds[0].i s, j := b.Succs[0].b, b.Succs[0].i ns := len(s.Preds) p.Succs[i] = Edge{s, j} s.Preds[j] = Edge{p, i} for _, e := range b.Preds[1:] { p, i := e.b, e.i p.Succs[i] = Edge{s, len(s.Preds)} s.Preds = append(s.Preds, Edge{p, i}) } // Attempt to preserve a statement boundary if bIsStmt {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Nov 18 17:59:44 UTC 2022 - 4.2K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/critical.go
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 16 21:40:11 UTC 2023 - 3.1K bytes - Viewed (0) -
src/cmd/vendor/golang.org/x/tools/go/cfg/cfg.go
// // if x := f(); x != nil { // T() // } else { // F() // } // // produces this CFG: // // 1: x := f() Body // x != nil // succs: 2, 3 // 2: T() IfThen // succs: 4 // 3: F() IfElse // succs: 4 // 4: IfDone // // The CFG does contain Return statements; even implicit returns are // materialized (at the position of the function's closing brace). //
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Apr 02 02:20:05 UTC 2024 - 7.7K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/fuse_branchredirect.go
ft.restore() if !unsat { continue } // This branch is impossible,so redirect p directly to another branch. out := 1 ^ j child := parent.Succs[out].b if child == b { continue } b.removePred(k) p.Succs[pk.i] = Edge{child, len(child.Preds)} // Fix up Phi value in b to have one less argument. for _, v := range b.Values { if v.Op != OpPhi { continue }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue May 16 21:40:11 UTC 2023 - 3.2K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/deadcode.go
} // removeEdge removes the i'th outgoing edge from b (and // the corresponding incoming edge from b.Succs[i].b). // Note that this potentially reorders successors of b, so it // must be used very carefully. func (b *Block) removeEdge(i int) { e := b.Succs[i] c := e.b j := e.i // Adjust b.Succs b.removeSucc(i) // Adjust c.Preds c.removePred(j) // Remove phi args from c's phis.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Dec 08 00:29:01 UTC 2023 - 9.2K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/dom.go
type linkedBlocks func(*Block) []Edge func dominators(f *Func) []*Block { preds := func(b *Block) []Edge { return b.Preds } succs := func(b *Block) []Edge { return b.Succs } //TODO: benchmark and try to find criteria for swapping between // dominatorsSimple and dominatorsLT return f.dominatorsLTOrig(f.Entry, preds, succs) } // dominatorsLTOrig runs Lengauer-Tarjan to compute a dominator tree starting at
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Sat Dec 03 17:08:51 UTC 2022 - 7.4K bytes - Viewed (0) -
src/cmd/vendor/golang.org/x/tools/go/analysis/passes/lostcancel/lostcancel.go
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Jan 22 19:00:13 UTC 2024 - 9K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/sparsetree.go
func (t SparseTree) treestructure(b *Block) string { return t.treestructure1(b, 0) } func (t SparseTree) treestructure1(b *Block, i int) string { s := "\n" + strings.Repeat("\t", i) + b.String() + "->[" for i, e := range b.Succs { if i > 0 { s += "," } s += e.b.String() } s += "]" if c0 := t[b.ID].child; c0 != nil { s += "(" for c := c0; c != nil; c = t[c.ID].sibling { if c != c0 { s += " "
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Nov 18 17:59:44 UTC 2022 - 8.1K bytes - Viewed (0)