pub fn getVectorSpec( data_layout: *const DataLayout, bit_width: PrimitiveSpec.BitWidth, store_size: Type.Size, ) PrimitiveSpec
data_layout: *const DataLayout
bit_width: PrimitiveSpec.BitWidth
store_size: Type.Size
810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826
pub fn getVectorSpec( data_layout: *const DataLayout, bit_width: PrimitiveSpec.BitWidth, store_size: Type.Size, ) PrimitiveSpec { if (data_layout.float_specs.getEntry(.{ .bit_width = bit_width, .abi_align = .default, .pref_align = .default, })) |entry| return entry.key_ptr.*; const default_align: Alignment = .fromByteUnits( std.math.ceilPowerOfTwoAssert(PrimitiveSpec.BitWidth, switch (store_size) { .fixed, .scalable => |known_min| known_min, }), ); return .{ .bit_width = bit_width, .abi_align = default_align, .pref_align = default_align }; }