Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 13 for SetOp (0.07 sec)

  1. src/cmd/compile/internal/typecheck/expr.go

    			n.SetType(nil)
    			return n
    		}
    		n.SetType(t)
    		n.SetOp(ir.OSLICESTR)
    	} else if t.IsPtr() && t.Elem().IsArray() {
    		tp = t.Elem()
    		n.SetType(types.NewSlice(tp.Elem()))
    		types.CalcSize(n.Type())
    		if hasmax {
    			n.SetOp(ir.OSLICE3ARR)
    		} else {
    			n.SetOp(ir.OSLICEARR)
    		}
    	} else if t.IsSlice() {
    		n.SetType(t)
    	} else {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 04 14:29:45 UTC 2024
    - 23.1K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ir/mini.go

    func (n *miniNode) posOr(pos src.XPos) src.XPos {
    	if pos.IsKnown() {
    		return pos
    	}
    	return n.pos
    }
    
    // op can be read, but not written.
    // An embedding implementation can provide a SetOp if desired.
    // (The panicking SetOp is with the other panics below.)
    func (n *miniNode) Op() Op            { return n.op }
    func (n *miniNode) Pos() src.XPos     { return n.pos }
    func (n *miniNode) SetPos(x src.XPos) { n.pos = x }
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Aug 31 22:09:44 UTC 2022
    - 2.8K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/typecheck/stmt.go

    		r := rhs[0]
    
    		switch r.Op() {
    		case ir.OINDEXMAP:
    			stmt.SetOp(ir.OAS2MAPR)
    		case ir.ORECV:
    			stmt.SetOp(ir.OAS2RECV)
    		case ir.ODOTTYPE:
    			r := r.(*ir.TypeAssertExpr)
    			stmt.SetOp(ir.OAS2DOTTYPE)
    			r.SetOp(ir.ODOTTYPE2)
    		case ir.ODYNAMICDOTTYPE:
    			r := r.(*ir.DynamicTypeAssertExpr)
    			stmt.SetOp(ir.OAS2DOTTYPE)
    			r.SetOp(ir.ODYNAMICDOTTYPE2)
    		default:
    			break assignOK
    		}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Nov 20 15:10:54 UTC 2023
    - 17.8K bytes
    - Viewed (0)
  4. src/cmd/pack/pack.go

    // op holds the operation we are doing (prtx).
    // verbose tells whether the 'v' option was specified.
    var (
    	op      rune
    	verbose bool
    )
    
    // setOp parses the operation string (first argument).
    func setOp(arg string) {
    	// Recognize 'go tool pack grc' because that was the
    	// formerly canonical way to build a new archive
    	// from a set of input files. Accepting it keeps old
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 14 19:41:17 UTC 2024
    - 8.2K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/typecheck/func.go

    	typecheckargs(n)
    	t := l.Type()
    	if t == nil {
    		n.SetType(nil)
    		return n
    	}
    	types.CheckSize(t)
    
    	switch l.Op() {
    	case ir.ODOTINTER:
    		n.SetOp(ir.OCALLINTER)
    
    	case ir.ODOTMETH:
    		l := l.(*ir.SelectorExpr)
    		n.SetOp(ir.OCALLMETH)
    
    		// typecheckaste was used here but there wasn't enough
    		// information further down the call chain to know if we
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 06 15:23:18 UTC 2024
    - 21.1K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/walk/order.go

    			// buffer during conversion. String comparison does not
    			// memorize the strings for later use, so it is safe.
    			if n.X.Op() == ir.OBYTES2STR {
    				n.X.(*ir.ConvExpr).SetOp(ir.OBYTES2STRTMP)
    			}
    			if n.Y.Op() == ir.OBYTES2STR {
    				n.Y.(*ir.ConvExpr).SetOp(ir.OBYTES2STRTMP)
    			}
    
    		case t.IsStruct() || t.IsArray():
    			// for complex comparisons, we need both args to be
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Mar 08 02:00:33 UTC 2024
    - 42.7K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/typecheck/typecheck.go

    		n.Args = list
    	case *ir.ReturnStmt:
    		n.Results = list
    	case *ir.AssignListStmt:
    		if n.Op() != ir.OAS2FUNC {
    			base.Fatalf("rewriteMultiValueCall: invalid op %v", n.Op())
    		}
    		as.SetOp(ir.OAS2FUNC)
    		n.SetOp(ir.OAS2)
    		n.Rhs = make([]ir.Node, len(list))
    		for i, tmp := range list {
    			n.Rhs[i] = AssignConv(tmp, n.Lhs[i].Type(), "assignment")
    		}
    	}
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 20 19:08:34 UTC 2024
    - 30.5K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/walk/compare.go

    	n.X = cheapExpr(n.X, init)
    	eqtab, eqdata := compare.EqInterface(n.X, n.Y)
    	var cmp ir.Node
    	if n.Op() == ir.OEQ {
    		cmp = ir.NewLogicalExpr(base.Pos, ir.OANDAND, eqtab, eqdata)
    	} else {
    		eqtab.SetOp(ir.ONE)
    		cmp = ir.NewLogicalExpr(base.Pos, ir.OOROR, eqtab, ir.NewUnaryExpr(base.Pos, ir.ONOT, eqdata))
    	}
    	return finishCompare(n, cmp, init)
    }
    
    func walkCompareString(n *ir.BinaryExpr, init *ir.Nodes) ir.Node {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 24 21:55:14 UTC 2023
    - 16.2K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/walk/select.go

    			case ir.OSEND:
    				// already ok
    
    			case ir.OSELRECV2:
    				r := n.(*ir.AssignListStmt)
    				if ir.IsBlank(r.Lhs[0]) && ir.IsBlank(r.Lhs[1]) {
    					n = r.Rhs[0]
    					break
    				}
    				r.SetOp(ir.OAS2RECV)
    			}
    
    			l = append(l, n)
    		}
    
    		l = append(l, cas.Body...)
    		l = append(l, ir.NewBranchStmt(base.Pos, ir.OBREAK, nil))
    		return l
    	}
    
    	// convert case value arguments to addresses.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Aug 22 01:53:41 UTC 2023
    - 7.8K bytes
    - Viewed (0)
  10. src/cmd/compile/internal/walk/assign.go

    	// same type as the variable on the lhs.
    	if ok := n.Lhs[1]; !ir.IsBlank(ok) && ok.Type().IsBoolean() {
    		call.Type().Field(1).Type = ok.Type()
    	}
    	n.Rhs = []ir.Node{call}
    	n.SetOp(ir.OAS2FUNC)
    
    	// don't generate a = *var if a is _
    	if ir.IsBlank(a) {
    		return walkExpr(typecheck.Stmt(n), init)
    	}
    
    	var_ := typecheck.TempAt(base.Pos, ir.CurFunc, types.NewPtr(t.Elem()))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 08 17:09:06 UTC 2024
    - 20.3K bytes
    - Viewed (0)
Back to top