- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 10 for Succs (0.13 sec)
-
src/cmd/compile/internal/ssa/check.go
} case BlockRetJmp: if len(b.Succs) != 0 { f.Fatalf("retjmp block %s len(Succs)==%d, want 0", b, len(b.Succs)) } if b.NumControls() != 1 { f.Fatalf("retjmp block %s has nil control", b) } if !b.Controls[0].Type.IsMemory() { f.Fatalf("retjmp block %s has non-memory control value %s", b, b.Controls[0].LongString()) } case BlockPlain: if len(b.Succs) != 1 {
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/compile/internal/ssa/block.go
func (b *Block) removeSucc(i int) { n := len(b.Succs) - 1 if i != n { e := b.Succs[n] b.Succs[i] = e // Update the other end of the edge we moved. e.b.Preds[e.i].i = i } b.Succs[n] = Edge{} b.Succs = b.Succs[:n] b.Func.invalidateCFG() } func (b *Block) swapSuccessors() { if len(b.Succs) != 2 { b.Fatalf("swapSuccessors with len(Succs)=%d", len(b.Succs)) } e0 := b.Succs[0]
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 15 15:44:14 UTC 2024 - 12.2K 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/vendor/golang.org/x/tools/go/cfg/builder.go
Stmt: stmt, } block.Succs = block.succs2[:0] g.Blocks = append(g.Blocks, block) return block } func (b *builder) add(n ast.Node) { b.current.Nodes = append(b.current.Nodes, n) } // jump adds an edge from the current block to the target block, // and sets b.current to nil. func (b *builder) jump(target *Block) { b.current.Succs = append(b.current.Succs, target) b.current = nil }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Apr 02 02:20:05 UTC 2024 - 11.4K bytes - Viewed (0) -
src/cmd/compile/internal/ppc64/ssa.go
if jmp.invasmun { // TODO: The second branch is probably predict-not-taken since it is for FP unordered s.Br(ppc64.ABVS, b.Succs[1].Block()) } case b.Succs[1].Block(): s.Br(jmp.asm, b.Succs[0].Block()) if jmp.asmeq { s.Br(ppc64.ABEQ, b.Succs[0].Block()) } default: if b.Likely != ssa.BranchUnlikely { s.Br(jmp.asm, b.Succs[0].Block()) if jmp.asmeq {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 22 19:59:38 UTC 2024 - 55.4K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/_gen/genericOps.go
var genericBlocks = []blockData{ {name: "Plain"}, // a single successor {name: "If", controls: 1}, // if Controls[0] goto Succs[0] else goto Succs[1] {name: "Defer", controls: 1}, // Succs[0]=defer queued, Succs[1]=defer recovered. Controls[0] is call op (of memory type) {name: "Ret", controls: 1}, // no successors, Controls[0] value is memory result
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 23 15:49:20 UTC 2024 - 42.6K bytes - Viewed (0) -
src/cmd/compile/internal/liveness/plive.go
// A variable is live on output from this block // if it is live on input to some successor. // // out[b] = \bigcup_{s \in succ[b]} in[s] newliveout.Copy(lv.blockEffects(b.Succs[0].Block()).livein) for _, succ := range b.Succs[1:] { newliveout.Or(newliveout, lv.blockEffects(succ.Block()).livein) } } if !be.liveout.Eq(newliveout) { change = true be.liveout.Copy(newliveout) }
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/ssagen/ssa.go
case b.Succs[1].Block(): s.oneJump(b, &jumps[1][0]) s.oneJump(b, &jumps[1][1]) default: var q *obj.Prog if b.Likely != ssa.BranchUnlikely { s.oneJump(b, &jumps[1][0]) s.oneJump(b, &jumps[1][1]) q = s.Br(obj.AJMP, b.Succs[1].Block()) } else { s.oneJump(b, &jumps[0][0]) s.oneJump(b, &jumps[0][1]) q = s.Br(obj.AJMP, b.Succs[0].Block()) } q.Pos = b.Pos } }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Jun 10 19:44:43 UTC 2024 - 284.9K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/func.go
if int(ID) < len(f.Cache.blocks) { b = &f.Cache.blocks[ID] b.ID = ID } else { b = &Block{ID: ID} } } b.Kind = kind b.Func = f b.Preds = b.predstorage[:0] b.Succs = b.succstorage[:0] b.Values = b.valstorage[:0] f.Blocks = append(f.Blocks, b) f.invalidateCFG() return b } func (f *Func) freeBlock(b *Block) { if b.Func == nil {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Jun 10 19:44:43 UTC 2024 - 25.8K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/rewrite.go
var states map[string]bool for { change := false deadChange := false for _, b := range f.Blocks { var b0 *Block if debug > 1 { b0 = new(Block) *b0 = *b b0.Succs = append([]Edge{}, b.Succs...) // make a new copy, not aliasing } for i, c := range b.ControlValues() { for c.Op == OpCopy { c = c.Args[0] b.ReplaceControl(i, c) } } if rb(b) {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 19:02:52 UTC 2024 - 64.2K bytes - Viewed (0)