- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 213 for preds (0.2 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/debug.go
// predecessor list. for i := len(preds) - 1; i >= 0; i-- { pred := preds[i] if blockLocs[pred.ID].lastChangedTime > locs.lastCheckedTime { continue // keep this predecessor } preds[i] = preds[len(preds)-1] preds = preds[:len(preds)-1] if state.loggingLevel > 2 { state.logf("Pruned b%d, lastChanged was %d but b%d lastChecked is %d\n", pred.ID, blockLocs[pred.ID].lastChangedTime, b.ID, locs.lastCheckedTime)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Jun 10 19:44:43 UTC 2024 - 58.4K 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/prove.go
for ; pred != nil; pred, child = uniquePred(pred), pred { if pred.Kind != BlockIf { continue } control := pred.Controls[0] br := unknown if pred.Succs[0].b == child { br = positive } if pred.Succs[1].b == child { if br != unknown { continue } br = negative } if br == unknown { continue }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 04 17:30:21 UTC 2024 - 48.9K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/looprotate.go
after := map[ID][]*Block{} // Check each loop header and decide if we want to move it. for _, loop := range loopnest.loops { b := loop.header var p *Block // b's in-loop predecessor for _, e := range b.Preds { if e.b.Kind != BlockPlain { continue } if loopnest.b2l[e.b.ID] != loop { continue } p = e.b } if p == nil { continue } p.Hotness |= HotInitial
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Wed May 15 15:44:14 UTC 2024 - 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/rewrite.go
// Max distance d := 100 for d > 0 { for _, x := range a { if b == x.Block { goto found } } if len(b.Preds) > 1 { // Don't know which way to go back. Abort. return nil } b = b.Preds[0].b d-- } return nil // too far away found: // At this point, r is the first value in a that we find by walking backwards.
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 19:02:52 UTC 2024 - 64.2K bytes - Viewed (0) -
tensorflow/compiler/jit/deadness_analysis.h
return other.pred_ == pred_; } bool operator!=(const DeadnessPredicate& other) const { return other.pred_ != pred_; } private: explicit DeadnessPredicate(void* pred) : pred_(pred) {} // This is really a Predicate*, but we don't want to expose that // implementation detail to our clients. `pred_` has pointer equality so we
Registered: Sun Jun 16 05:45:23 UTC 2024 - Last Modified: Thu Feb 22 06:59:07 UTC 2024 - 3.3K bytes - Viewed (0) -
src/cmd/compile/internal/ssa/func.go
} else { ID := f.bid.get() 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)