Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 17 for OpArg (0.15 sec)

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

    	//      z0   z1
    	//       \   /
    	//       exit
    	fun = c.Fun("entry",
    		Bloc("entry",
    			Valu("mem", OpInitMem, types.TypeMem, 0, nil),
    			Valu("c1", OpArg, c.config.Types.Bool, 0, nil),
    			If("c1", "b0", "z0")),
    		Bloc("b0",
    			Valu("c2", OpArg, c.config.Types.Bool, 0, nil),
    			If("c2", "z1", "z0")),
    		Bloc("z0",
    			Goto("exit")),
    		Bloc("z1",
    			Goto("exit")),
    		Bloc("exit",
    			Exit("mem"),
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Oct 31 20:45:54 UTC 2023
    - 7.4K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/regalloc_test.go

    func TestSpillWithLoop(t *testing.T) {
    	c := testConfig(t)
    	f := c.Fun("entry",
    		Bloc("entry",
    			Valu("mem", OpInitMem, types.TypeMem, 0, nil),
    			Valu("ptr", OpArg, c.config.Types.Int64.PtrTo(), 0, c.Temp(c.config.Types.Int64)),
    			Valu("cond", OpArg, c.config.Types.Bool, 0, c.Temp(c.config.Types.Bool)),
    			Valu("ld", OpAMD64MOVQload, c.config.Types.Int64, 0, nil, "ptr", "mem"), // this value needs a spill
    			Goto("loop"),
    		),
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 08 19:09:14 UTC 2023
    - 6.3K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/cse_test.go

    			Valu("r7", OpAdd64, c.config.Types.Int64, 0, nil, "arg3", "arg1"),
    			Valu("r1", OpAdd64, c.config.Types.Int64, 0, nil, "arg1", "arg2"),
    			Valu("arg1", OpArg, c.config.Types.Int64, 0, arg1Aux),
    			Valu("arg2", OpArg, c.config.Types.Int64, 0, arg2Aux),
    			Valu("arg3", OpArg, c.config.Types.Int64, 0, arg3Aux),
    			Valu("r9", OpAdd64, c.config.Types.Int64, 0, nil, "r7", "r8"),
    			Valu("r4", OpAdd64, c.config.Types.Int64, 0, nil, "r1", "r2"),
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 08 19:09:14 UTC 2023
    - 4.2K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/expand_calls.go

    		return k
    	}
    	panic("Haven't implemented this case yet, do I need to?")
    }
    
    // prAssignForArg returns the ABIParamAssignment for v, assumed to be an OpArg.
    func (x *expandState) prAssignForArg(v *Value) *abi.ABIParamAssignment {
    	if v.Op != OpArg {
    		panic(fmt.Errorf("Wanted OpArg, instead saw %s", v.LongString()))
    	}
    	return ParamAssignmentForArgName(x.f, v.Aux.(*ir.Name))
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Nov 28 05:13:40 UTC 2023
    - 31.9K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/stackalloc.go

    					if f.pass.debug > stackDebug {
    						fmt.Printf("stackalloc register arg %s skipping name %s\n", v, name)
    					}
    					continue
    				}
    			} else if name.N.Class == ir.PPARAM && v.Op != OpArg {
    				// PPARAM's only bind to OpArg
    				if f.pass.debug > stackDebug {
    					fmt.Printf("stackalloc PPARAM name %s skipping non-Arg %s\n", name, v)
    				}
    				continue
    			}
    
    			if names[v.ID] == empty {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Feb 29 21:29:41 UTC 2024
    - 12.6K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/ssa/debug.go

    		return v
    	}
    
    	// Make a pass through the entry block looking for
    	// OpArg{Int,Float}Reg ops. Record the slots they use in a table
    	// ("sc"). We use a type-insensitive lookup for the slot table,
    	// since the type we get from the ABI analyzer won't always match
    	// what the compiler uses when creating OpArg{Int,Float}Reg ops.
    	for _, v := range f.Entry.Values {
    		if v.Op == OpArgIntReg || v.Op == OpArgFloatReg {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 58.4K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/ssa/schedule.go

    				// In particular, they need to come before regular OpArg operations because
    				// of how regalloc places spill code (see regalloc.go:placeSpills:mustBeFirst).
    				if b != f.Entry {
    					f.Fatalf("%s appeared outside of entry block, b=%s", v.Op, b.String())
    				}
    				score[v.ID] = ScorePhi
    			case v.Op == OpArg || v.Op == OpSP || v.Op == OpSB:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 08 15:53:17 UTC 2024
    - 16.4K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/numberlines.go

    // boundary. Such values don't correspond to a user's understanding of a
    // statement boundary.
    func notStmtBoundary(op Op) bool {
    	switch op {
    	case OpCopy, OpPhi, OpVarDef, OpVarLive, OpUnknown, OpFwdRef, OpArg, OpArgIntReg, OpArgFloatReg:
    		return true
    	}
    	return false
    }
    
    func (b *Block) FirstPossibleStmtValue() *Value {
    	for _, v := range b.Values {
    		if notStmtBoundary(v.Op) {
    			continue
    		}
    		return v
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Aug 14 21:26:13 UTC 2023
    - 7.8K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssa/rewrite.go

    		if p2.Op == OpAddr || p2.Op == OpLocalAddr || p2.Op == OpSP {
    			return true
    		}
    		return (p2.Op == OpArg || p2.Op == OpArgIntReg) && p1.Args[0].Op == OpSP
    	case OpArg, OpArgIntReg:
    		if p2.Op == OpSP || p2.Op == OpLocalAddr {
    			return true
    		}
    	case OpSP:
    		return p2.Op == OpAddr || p2.Op == OpLocalAddr || p2.Op == OpArg || p2.Op == OpArgIntReg || p2.Op == OpSP
    	}
    	return false
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 64.2K bytes
    - Viewed (0)
  10. src/cmd/compile/internal/ssa/deadstore.go

    		}
    
    		// The code below assumes that we have handled all the ops
    		// with sym effects already. Sanity check that here.
    		// Ignore Args since they can't be autos.
    		if v.Op.SymEffect() != SymNone && v.Op != OpArg {
    			panic("unhandled op with sym effect")
    		}
    
    		if v.Uses == 0 && v.Op != OpNilCheck && !v.Op.IsCall() && !v.Op.HasSideEffects() || len(args) == 0 {
    			// We need to keep nil checks even if they have no use.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 25 20:07:26 UTC 2024
    - 11K bytes
    - Viewed (0)
Back to top