Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 32 for phi2 (0.04 sec)

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

    			Goto("b3")),
    		Bloc("b3",
    			Valu("phi2", OpPhi, c.config.Types.Bool, 0, nil, "cmp1", "cmp2"),
    			If("phi2", "b4", "b5")),
    		Bloc("b4",
    			Valu("cmp3", OpLess64, c.config.Types.Bool, 0, nil, "arg3", "arg1"),
    			Goto("b5")),
    		Bloc("b5",
    			Valu("phi3", OpPhi, c.config.Types.Bool, 0, nil, "phi2", "cmp3"),
    			If("phi3", "b6", "b7")),
    		Bloc("b6",
    			Exit("mem")),
    		Bloc("b7",
    			Exit("mem")))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 09 23:01:51 UTC 2017
    - 1.3K bytes
    - Viewed (0)
  2. pkg/test/loadbalancersim/timeseries/data.go

    	return s[len(s)-1]
    }
    
    func (s sorted) quantile(phi float64) float64 {
    	if len(s) == 0 || math.IsNaN(phi) {
    		return nan
    	}
    	if phi <= 0 {
    		return s.min()
    	}
    	if phi >= 1 {
    		return s.max()
    	}
    	idx := uint(phi*float64(len(s)-1) + 0.5)
    	if idx >= uint(len(s)) {
    		idx = uint(len(s) - 1)
    	}
    	return s[idx]
    }
    
    func (s sorted) quantiles(phis ...float64) []float64 {
    Registered: Fri Jun 14 15:00:06 UTC 2024
    - Last Modified: Thu Feb 03 18:19:25 UTC 2022
    - 2.1K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/copyelim.go

    		}
    	}
    }
    
    // phielim eliminates redundant phi values from f.
    // A phi is redundant if its arguments are all equal. For
    // purposes of counting, ignore the phi itself. Both of
    // these phis are redundant:
    //
    //	v = phi(x,x,x)
    //	v = phi(x,v,x,v)
    //
    // We repeat this process to also catch situations like:
    //
    //	v = phi(x, phi(x, x), phi(x, v))
    //
    // TODO: Can we also simplify cases like:
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 22 14:55:18 UTC 2024
    - 3.5K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/test/testdata/phi_test.go

    		u = int32(data2[20])
    		v = int32(data2[21])
    		w = int32(data2[22])
    		x = int32(data2[23])
    		y = int32(data2[24])
    		z = int32(data2[25])
    	}
    	// Lots of phis of the form phi(int32,int64) of type int32 happen here.
    	// Some will be stack phis. For those stack phis, make sure the spill
    	// of the second argument uses the phi's width (4 bytes), not its width
    	// (8 bytes).  Otherwise, a random stack slot gets clobbered.
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Dec 23 06:40:04 UTC 2020
    - 2.2K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/deadcode.go

    	// Adjust c.Preds
    	c.removePred(j)
    
    	// Remove phi args from c's phis.
    	for _, v := range c.Values {
    		if v.Op != OpPhi {
    			continue
    		}
    		c.removePhiArg(v, j)
    		// Note: this is trickier than it looks. Replacing
    		// a Phi with a Copy can in general cause problems because
    		// Phi and Copy don't have exactly the same semantics.
    		// Phi arguments always come from a predecessor block,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Dec 08 00:29:01 UTC 2023
    - 9.2K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/ssa/tighten.go

    //  1. The start memory state of a block is InitMem, a Phi node of type mem or
    //     an incoming memory value.
    //  2. The start memory state of a block is consistent with the end memory state
    //     of its parent nodes. If the start memory state of a block is a Phi value,
    //     then the end memory state of its parent nodes is consistent with the
    //     corresponding argument value of the Phi node.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 16 01:01:38 UTC 2023
    - 7.7K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/ssa/phiopt.go

    // Copyright 2016 The Go Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style
    // license that can be found in the LICENSE file.
    
    package ssa
    
    // phiopt eliminates boolean Phis based on the previous if.
    //
    // Main use case is to transform:
    //
    //	x := false
    //	if b {
    //	  x = true
    //	}
    //
    // into x = b.
    //
    // In SSA code this appears as
    //
    //	b0
    //	  If b -> b1 b2
    //	b1
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 11 16:34:30 UTC 2022
    - 8.1K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/print.go

    			for _, v := range b.Values {
    				p.value(v, live[v.ID])
    				printed[v.ID] = true
    			}
    			p.endBlock(b, reachable[b.ID])
    			continue
    		}
    
    		// print phis first since all value cycles contain a phi
    		n := 0
    		for _, v := range b.Values {
    			if v.Op != OpPhi {
    				continue
    			}
    			p.value(v, live[v.ID])
    			printed[v.ID] = true
    			n++
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Oct 31 21:41:20 UTC 2022
    - 3.9K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssa/trim.go

    				s.Pos = s.Pos.WithIsStmt()
    			}
    		}
    		// If `s` had more than one predecessor, update its phi-ops to
    		// account for the merge.
    		if ns > 1 {
    			for _, v := range s.Values {
    				if v.Op == OpPhi {
    					mergePhi(v, j, b)
    				}
    
    			}
    			// Remove the phi-ops from `b` if they were merged into the
    			// phi-ops of `s`.
    			k := 0
    			for _, v := range b.Values {
    				if v.Op == OpPhi {
    					if v.Uses == 0 {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Nov 18 17:59:44 UTC 2022
    - 4.2K bytes
    - Viewed (0)
  10. src/cmd/compile/internal/ssa/critical.go

    			continue
    		}
    
    		var phi *Value
    		// determine if we've only got a single phi in this
    		// block, this is easier to handle than the general
    		// case of a block with multiple phi values.
    		for _, v := range b.Values {
    			if v.Op == OpPhi {
    				if phi != nil {
    					phi = nil
    					break
    				}
    				phi = v
    			}
    		}
    
    		// reset our block map
    		if phi != nil {
    			for _, v := range phi.Args {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 16 21:40:11 UTC 2023
    - 3.1K bytes
    - Viewed (0)
Back to top