package types type Vec32x4[T ~float32 | ~uint32 | ~int32] struct { MustAddressable128 } func (v Vec32x4[T]) Type() T { var t T return t } func (v Vec32x4[T]) Width() int { return 128 } func (v Vec32x4[T]) Lanes() int { return 4 } func (v Vec32x4[T]) LaneWidth() int { return 32 } func (v Vec32x4[T]) Vec128() Vec128 { return v } type Vec32x8[T ~float32 | ~uint32 | ~int32] struct { MustAddressable256 } func (v Vec32x8[T]) Type() T { var t T return t } func (v Vec32x8[T]) Width() int { return 256 } func (v Vec32x8[T]) Lanes() int { return 8 } func (v Vec32x8[T]) LaneWidth() int { return 32 } func (v Vec32x8[T]) Vec128() Vec128 { return Vec32x4[T]{v.As128()} } func (v Vec32x8[T]) Vec256() Vec256 { return v } type Vec32x16[T ~float32 | ~uint32 | ~int32] struct { MustAddressable512 } func (v Vec32x16[T]) Type() T { var t T return t } func (v Vec32x16[T]) Width() int { return 512 } func (v Vec32x16[T]) Lanes() int { return 16 } func (v Vec32x16[T]) LaneWidth() int { return 32 } func (v Vec32x16[T]) Vec128() Vec128 { return Vec32x4[T]{v.As128()} } func (v Vec32x16[T]) Vec256() Vec256 { return Vec32x8[T]{v.As256()} } func (v Vec32x16[T]) Vec512() Vec512 { return v }