Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 12 for NumElem (0.93 sec)

  1. src/cmd/compile/internal/types/size.go

    			cap := (uint64(MaxWidth) - 1) / uint64(t.Elem().width)
    			if uint64(t.NumElem()) > cap {
    				base.Errorf("type %L larger than address space", t)
    			}
    		}
    		w = t.NumElem() * t.Elem().width
    		t.align = t.Elem().align
    
    		// ABIInternal only allows "trivial" arrays (i.e., length 0 or 1)
    		// to be passed by register.
    		switch t.NumElem() {
    		case 0:
    			t.intRegs = 0
    			t.floatRegs = 0
    		case 1:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 15K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/types/type.go

    		for i, tf := range tfs {
    			if c := tf.Type.cmp(xfs[i].Type); c != CMPeq {
    				return c
    			}
    		}
    		return CMPeq
    
    	case TARRAY:
    		if t.NumElem() != x.NumElem() {
    			return cmpForNe(t.NumElem() < x.NumElem())
    		}
    
    	case TCHAN:
    		if t.ChanDir() != x.ChanDir() {
    			return cmpForNe(t.ChanDir() < x.ChanDir())
    		}
    
    	default:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 04 14:29:45 UTC 2024
    - 49.5K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/typecheck/typecheck.go

    			base.Errorf("invalid slice index %v (index must be non-negative)", r)
    			return false
    		} else if tp != nil && tp.NumElem() >= 0 && constant.Compare(x, token.GTR, constant.MakeInt64(tp.NumElem())) {
    			base.Errorf("invalid slice index %v (out of bounds for %d-element array)", r, tp.NumElem())
    			return false
    		} else if ir.IsConst(l, constant.String) && constant.Compare(x, token.GTR, constant.MakeInt64(int64(len(ir.StringVal(l))))) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 20 19:08:34 UTC 2024
    - 30.5K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssagen/ssa.go

    			val := s.newValue1I(ssa.OpStructSelect, ft, int64(i), right)
    			s.storeTypeScalars(ft, addr, val, 0)
    		}
    	case t.IsArray() && t.NumElem() == 0:
    		// nothing
    	case t.IsArray() && t.NumElem() == 1:
    		s.storeTypeScalars(t.Elem(), left, s.newValue1I(ssa.OpArraySelect, t.Elem(), 0, right), 0)
    	default:
    		s.Fatalf("bad write barrier type %v", t)
    	}
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 284.9K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/value.go

    		return false
    	}
    	switch t.Kind() {
    	case types.TARRAY:
    		// We can't do larger arrays because dynamic indexing is
    		// not supported on SSA variables.
    		// TODO: allow if all indexes are constant.
    		if t.NumElem() <= 1 {
    			return CanSSA(t.Elem())
    		}
    		return false
    	case types.TSTRUCT:
    		if t.NumFields() > MaxStruct {
    			return false
    		}
    		for _, t1 := range t.Fields() {
    			if !CanSSA(t1.Type) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 03 16:40:22 UTC 2024
    - 16.7K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/liveness/plive.go

    		clobberPtr(b, v, offset+int64(types.PtrSize))
    
    	case types.TSLICE:
    		// struct { byte *array; int len; int cap; }
    		clobberPtr(b, v, offset)
    
    	case types.TARRAY:
    		for i := int64(0); i < t.NumElem(); i++ {
    			clobberWalk(b, v, offset+i*t.Elem().Size(), t.Elem())
    		}
    
    	case types.TSTRUCT:
    		for _, t1 := range t.Fields() {
    			clobberWalk(b, v, offset+t1.Offset, t1.Type)
    		}
    
    	default:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 15:22:22 UTC 2024
    - 45.2K bytes
    - Viewed (0)
  7. src/cmd/compile/internal/typecheck/expr.go

    	switch t.Kind() {
    	default:
    		base.Errorf("invalid composite literal type %v", t)
    		n.SetType(nil)
    
    	case types.TARRAY:
    		typecheckarraylit(t.Elem(), t.NumElem(), n.List, "array literal")
    		n.SetOp(ir.OARRAYLIT)
    
    	case types.TSLICE:
    		length := typecheckarraylit(t.Elem(), -1, n.List, "slice literal")
    		n.SetOp(ir.OSLICELIT)
    		n.Len = length
    
    	case types.TMAP:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 04 14:29:45 UTC 2024
    - 23.1K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/func.go

    	st := name.Type
    	return f.SplitSlot(name, st.FieldName(i), st.FieldOff(i), st.FieldType(i))
    }
    func (f *Func) SplitArray(name *LocalSlot) *LocalSlot {
    	n := name.N
    	at := name.Type
    	if at.NumElem() != 1 {
    		base.FatalfAt(n.Pos(), "bad array size")
    	}
    	et := at.Elem()
    	return f.SplitSlot(name, "[0]", 0, et)
    }
    
    func (f *Func) SplitSlot(name *LocalSlot, sfx string, offset int64, t *types.Type) *LocalSlot {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Jun 10 19:44:43 UTC 2024
    - 25.8K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/walk/expr.go

    	// disable bounds check.
    	if n.Bounded() {
    		return n
    	}
    	t := n.X.Type()
    	if t != nil && t.IsPtr() {
    		t = t.Elem()
    	}
    	if t.IsArray() {
    		n.SetBounded(bounded(r, t.NumElem()))
    		if base.Flag.LowerM != 0 && n.Bounded() && !ir.IsConst(n.Index, constant.Int) {
    			base.Warn("index bounds check elided")
    		}
    	} else if ir.IsConst(n.X, constant.String) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:34:01 UTC 2024
    - 27.6K bytes
    - Viewed (0)
  10. src/cmd/compile/internal/walk/builtin.go

    	// delayed until now to preserve side effects.
    	t := n.X.Type()
    
    	if t.IsPtr() {
    		t = t.Elem()
    	}
    	if t.IsArray() {
    		safeExpr(n.X, init)
    		con := ir.NewConstExpr(constant.MakeInt64(t.NumElem()), n)
    		con.SetTypecheck(1)
    		return con
    	}
    	return n
    }
    
    // walkMakeChan walks an OMAKECHAN node.
    func walkMakeChan(n *ir.MakeExpr, init *ir.Nodes) ir.Node {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Mar 08 22:35:22 UTC 2024
    - 31.2K bytes
    - Viewed (0)
Back to top