- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 143 for preds (0.08 sec)
-
src/cmd/compile/internal/ssa/block.go
// phi values by calling b.removePhiArg(v, i). func (b *Block) removePred(i int) { n := len(b.Preds) - 1 if i != n { e := b.Preds[n] b.Preds[i] = e // Update the other end of the edge we moved. e.b.Succs[e.i].i = i } b.Preds[n] = Edge{} b.Preds = b.Preds[:n] b.Func.invalidateCFG() } // removeSucc removes the ith output edge from b. // It is the responsibility of the caller to remove
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/compile/internal/ssa/check.go
f.Fatalf("%s.Func=%s, want %s", b, b.Func.Name, f.Name) } for i, e := range b.Preds { if se := e.b.Succs[e.i]; se.b != b || se.i != i { f.Fatalf("block pred/succ not crosslinked correctly %d:%s %d:%s", i, b, se.i, se.b) } } for i, e := range b.Succs { if pe := e.b.Preds[e.i]; pe.b != b || pe.i != i { f.Fatalf("block succ/pred not crosslinked correctly %d:%s %d:%s", i, b, pe.i, pe.b) } }
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/loopreschedchecks.go
mem1 := sched.NewValue1I(bb.Pos, OpSelectN, types.TypeMem, 0, call) sched.AddEdgeTo(h) headerMemPhi.AddArg(mem1) bb.Succs[p.i] = Edge{test, 0} test.Preds = append(test.Preds, Edge{bb, p.i}) // Must correct all the other phi functions in the header for new incoming edge. // Except for mem phis, it will be the same value seen on the original // backedge at index i.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Aug 22 21:17:10 UTC 2023 - 16K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/func_test.go
return false } for i := range fb.Succs { if !checkBlk(fb.Succs[i].b, gb.Succs[i].b) { return false } } if len(fb.Preds) != len(gb.Preds) { return false } for i := range fb.Preds { if !checkBlk(fb.Preds[i].b, gb.Preds[i].b) { return false } } return true } return blkcor[fb] == gb && blkcor[gb] == fb }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Sep 08 19:01:04 UTC 2023 - 13.1K bytes - Viewed (0) -
src/cmd/compile/internal/liveness/plive.go
decisionBlock = c } else if len(c.Preds) == 1 && len(d.Preds) == 1 && c.Preds[0].Block() == d.Preds[0].Block() { decisionBlock = c.Preds[0].Block() } else { lv.f.Fatalf("can't find write barrier pattern %v", v) } if len(decisionBlock.Succs) != 2 { lv.f.Fatalf("common predecessor block the wrong type %s", decisionBlock.Kind) } // Flow backwards from the control value to find the
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/nilcheck.go
node := work[len(work)-1] work = work[:len(work)-1] switch node.op { case Work: b := node.block // First, see if we're dominated by an explicit nil check. if len(b.Preds) == 1 { p := b.Preds[0].b if p.Kind == BlockIf && p.Controls[0].Op == OpIsNonNil && p.Succs[0].b == b { if ptr := p.Controls[0].Args[0]; nonNilValues[ptr.ID] == nil { nonNilValues[ptr.ID] = ptr
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Oct 31 20:45:54 UTC 2023 - 11.3K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/loopbce.go
// do something // nxt = inc + ind // goto loop // // exit_loop: func findIndVar(f *Func) []indVar { var iv []indVar sdom := f.Sdom() for _, b := range f.Blocks { if b.Kind != BlockIf || len(b.Preds) != 2 { continue } var ind *Value // induction variable var init *Value // starting value var limit *Value // ending value // Check that the control if it either ind </<= limit or limit </<= ind.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Nov 07 17:37:47 UTC 2023 - 11.8K bytes - Viewed (0) -
tensorflow/compiler/mlir/tensorflow/tests/functional-control-flow-to-cfg.mlir
// CHECK: ^bb1([[CONDARG0:%.+]]: tensor<!tf_type.variant>): // 2 preds: ^bb0, ^bb2 // CHECK: [[CONTINUE:%.+]] = call @testWhileCond([[CONDARG0]]) : (tensor<!tf_type.variant>) -> tensor<i1> // CHECK: [[TOBOOL:%.+]] = "tf.ToBool"([[CONTINUE]]) : (tensor<i1>) -> tensor<i1> // CHECK: [[PRED:%.+]] = tensor.extract [[TOBOOL]][] : tensor<i1>
Registered: Sun Jun 16 05:45:23 UTC 2024 - Last Modified: Mon Oct 30 06:52:55 UTC 2023 - 12.3K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/stackalloc.go
} } } // for each predecessor of b, expand its list of live-at-end values // invariant: s contains the values live at the start of b (excluding phi inputs) for i, e := range b.Preds { p := e.b t.clear() t.addAll(s.live[p.ID]) t.addAll(live.contents()) t.addAll(spillLive[p.ID]) for _, v := range phis { a := v.Args[i] if s.values[a.ID].needSlot {
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/ssa/html.go
} fmt.Fprintf(p.w, "<ul class=\"%s ssa-print-func %s\">", b, dead) fmt.Fprintf(p.w, "<li class=\"ssa-start-block\">%s:", b.HTML()) if len(b.Preds) > 0 { io.WriteString(p.w, " ←") // left arrow for _, e := range b.Preds { pred := e.b fmt.Fprintf(p.w, " %s", pred.HTML()) } } if len(b.Values) > 0 { io.WriteString(p.w, `<button onclick="hideBlock(this)">-</button>`) }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed Oct 04 15:11:40 UTC 2023 - 34.8K bytes - Viewed (0)