Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 5 of 5 for ControlValues (0.21 sec)

  1. src/cmd/compile/internal/ssa/flagalloc.go

    	for n := 0; n < 2; n++ {
    		for _, b := range po {
    			// Walk values backwards to figure out what flag
    			// value we want in the flag register at the start
    			// of the block.
    			var flag *Value
    			for _, c := range b.ControlValues() {
    				if c.Type.IsFlags() {
    					if flag != nil {
    						panic("cannot have multiple controls using flags")
    					}
    					flag = c
    				}
    			}
    			if flag == nil {
    				flag = end[b.ID]
    			}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Oct 31 21:41:20 UTC 2022
    - 6.7K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/copyelim.go

    func copyelim(f *Func) {
    	phielim(f)
    
    	// loop of copyelimValue(v) process has been done in phielim() pass.
    	// Update block control values.
    	for _, b := range f.Blocks {
    		for i, v := range b.ControlValues() {
    			if v.Op == OpCopy {
    				b.ReplaceControl(i, v.Args[0])
    			}
    		}
    	}
    
    	// Update named values.
    	for _, name := range f.Names {
    		values := f.NamedValues[*name]
    		for i, v := range values {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 22 14:55:18 UTC 2024
    - 3.5K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/tighten.go

    						use = b.Preds[i].b
    					}
    					if target[a.ID] == nil {
    						target[a.ID] = use
    					} else {
    						target[a.ID] = lca.find(target[a.ID], use)
    					}
    				}
    			}
    			for _, c := range b.ControlValues() {
    				if !canMove[c.ID] {
    					continue
    				}
    				if target[c.ID] == nil {
    					target[c.ID] = b
    				} else {
    					target[c.ID] = lca.find(target[c.ID], b)
    				}
    			}
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 16 01:01:38 UTC 2023
    - 7.7K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/cse.go

    							v.Pos = v.Pos.WithIsStmt()
    							w.Pos = w.Pos.WithNotStmt()
    						} // TODO and if this fails?
    					}
    					v.SetArg(i, x)
    					rewrites++
    				}
    			}
    		}
    		for i, v := range b.ControlValues() {
    			if x := rewrite[v.ID]; x != nil {
    				if v.Op == OpNilCheck {
    					// nilcheck pass will remove the nil checks and log
    					// them appropriately, so don't mess with them here.
    					continue
    				}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Oct 31 21:41:20 UTC 2022
    - 9.6K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/deadcode.go

    	// Calls are live (because callee can observe the memory state).
    	for _, b := range f.Blocks {
    		if !reachable[b.ID] {
    			continue
    		}
    		for _, v := range b.ControlValues() {
    			if !live[v.ID] {
    				live[v.ID] = true
    				q = append(q, v)
    				if v.Pos.IsStmt() != src.PosNotStmt {
    					liveOrderStmts = append(liveOrderStmts, v)
    				}
    			}
    		}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Dec 08 00:29:01 UTC 2023
    - 9.2K bytes
    - Viewed (0)
Back to top