package types type Vec16x8[T ~uint16 | ~int16] struct { MustAddressable128 } func (v Vec16x8[T]) Type() T { var t T return t } func (v Vec16x8[T]) Width() int { return 128 } func (v Vec16x8[T]) Lanes() int { return 8 } func (v Vec16x8[T]) LaneWidth() int { return 16 } func (v Vec16x8[T]) Vec128() Vec128 { return v } type Vec16x16[T ~uint16 | ~int16] struct { MustAddressable256 } func (v Vec16x16[T]) Type() T { var t T return t } func (v Vec16x16[T]) Width() int { return 256 } func (v Vec16x16[T]) Lanes() int { return 16 } func (v Vec16x16[T]) LaneWidth() int { return 16 } func (v Vec16x16[T]) Vec128() Vec128 { return Vec16x8[T]{v.As128()} } func (v Vec16x16[T]) Vec256() Vec256 { return v } type Vec16x32[T ~uint16 | ~int16] struct { MustAddressable512 } func (v Vec16x32[T]) Type() T { var t T return t } func (v Vec16x32[T]) Width() int { return 512 } func (v Vec16x32[T]) Lanes() int { return 32 } func (v Vec16x32[T]) LaneWidth() int { return 16 } func (v Vec16x32[T]) Vec128() Vec128 { return Vec16x8[T]{v.As128()} } func (v Vec16x32[T]) Vec256() Vec256 { return Vec16x16[T]{v.As256()} } func (v Vec16x32[T]) Vec512() Vec512 { return v }