Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 3 of 3 for NewLogicalExpr (0.34 sec)

  1. src/cmd/compile/internal/walk/compare.go

    			match := ir.NewBinaryExpr(base.Pos, eq, itabType(tab), rtyp)
    			eqtype = ir.NewLogicalExpr(base.Pos, andor, nonnil, match)
    		}
    		// Check for data equal.
    		eqdata := ir.NewBinaryExpr(base.Pos, eq, ifaceData(n.Pos(), l, r.Type()), r)
    		// Put it all together.
    		expr := ir.NewLogicalExpr(base.Pos, andor, eqtype, eqdata)
    		return finishCompare(n, expr, init)
    	}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 24 21:55:14 UTC 2023
    - 16.2K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/walk/builtin.go

    			isNil := ir.NewBinaryExpr(base.Pos, ir.OEQ, unsafePtr, typecheck.NodNil())
    			gtZero := ir.NewBinaryExpr(base.Pos, ir.OGT, typecheck.Conv(len, lenType), ir.NewInt(base.Pos, 0))
    			nifPtr.Cond =
    				ir.NewLogicalExpr(base.Pos, ir.OANDAND, isNil, gtZero)
    			nifPtr.Body.Append(mkcall("panicunsafeslicenilptr", nil, &nifPtr.Body))
    			appendWalkStmt(init, nifPtr)
    
    			h := ir.NewSliceHeaderExpr(n.Pos(), sliceType,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Mar 08 22:35:22 UTC 2024
    - 31.2K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/walk/switch.go

    func (c *exprClause) test(exprname ir.Node) ir.Node {
    	// Integer range.
    	if c.hi != c.lo {
    		low := ir.NewBinaryExpr(c.pos, ir.OGE, exprname, c.lo)
    		high := ir.NewBinaryExpr(c.pos, ir.OLE, exprname, c.hi)
    		return ir.NewLogicalExpr(c.pos, ir.OANDAND, low, high)
    	}
    
    	// Optimize "switch true { ...}" and "switch false { ... }".
    	if ir.IsConst(exprname, constant.Bool) && !c.lo.Type().IsInterface() {
    		if ir.BoolVal(exprname) {
    			return c.lo
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:34:01 UTC 2024
    - 30.1K bytes
    - Viewed (0)
Back to top