@@ -4148,6 +4148,7 @@ pub unsafe fn vec_sqrt<T: sealed::VectorSqrt>(a: T) -> T {
41484148/// Vector Splat
41494149#[ inline]
41504150#[ target_feature( enable = "vector" ) ]
4151+ #[ rustc_legacy_const_generics( 1 ) ]
41514152#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
41524153pub unsafe fn vec_splat < T : sealed:: VectorSplat , const IMM : u32 > ( a : T ) -> T {
41534154 a. vec_splat :: < IMM > ( )
@@ -4558,6 +4559,7 @@ pub unsafe fn vec_unpackl<T: sealed::VectorUnpackl>(a: T) -> <T as sealed::Vecto
45584559/// in the corresponding byte element of d are set to ones. Otherwise, if the bit is zero, the corresponding byte element is set to zero.
45594560#[ inline]
45604561#[ target_feature( enable = "vector" ) ]
4562+ #[ rustc_legacy_const_generics( 0 ) ]
45614563#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
45624564#[ cfg_attr( test, assert_instr( vgbm, MASK = 0x00FF ) ) ]
45634565pub unsafe fn vec_genmask < const MASK : u16 > ( ) -> vector_unsigned_char {
@@ -4567,6 +4569,7 @@ pub unsafe fn vec_genmask<const MASK: u16>() -> vector_unsigned_char {
45674569/// Vector Generate Mask (Byte)
45684570#[ inline]
45694571#[ target_feature( enable = "vector" ) ]
4572+ #[ rustc_legacy_const_generics( 0 , 1 ) ]
45704573#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
45714574#[ cfg_attr( test, assert_instr( vrepib, L = 3 , H = 5 ) ) ]
45724575pub unsafe fn vec_genmasks_8 < const L : u8 , const H : u8 > ( ) -> vector_unsigned_char {
@@ -4576,6 +4579,7 @@ pub unsafe fn vec_genmasks_8<const L: u8, const H: u8>() -> vector_unsigned_char
45764579/// Vector Generate Mask (Halfword)
45774580#[ inline]
45784581#[ target_feature( enable = "vector" ) ]
4582+ #[ rustc_legacy_const_generics( 0 , 1 ) ]
45794583#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
45804584#[ cfg_attr( test, assert_instr( vrepih, L = 3 , H = 5 ) ) ]
45814585pub unsafe fn vec_genmasks_16 < const L : u8 , const H : u8 > ( ) -> vector_unsigned_short {
@@ -4585,6 +4589,7 @@ pub unsafe fn vec_genmasks_16<const L: u8, const H: u8>() -> vector_unsigned_sho
45854589/// Vector Generate Mask (Word)
45864590#[ inline]
45874591#[ target_feature( enable = "vector" ) ]
4592+ #[ rustc_legacy_const_generics( 0 , 1 ) ]
45884593#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
45894594#[ cfg_attr( test, assert_instr( vgmf, L = 3 , H = 5 ) ) ]
45904595pub unsafe fn vec_genmasks_32 < const L : u8 , const H : u8 > ( ) -> vector_unsigned_int {
@@ -4594,6 +4599,7 @@ pub unsafe fn vec_genmasks_32<const L: u8, const H: u8>() -> vector_unsigned_int
45944599/// Vector Generate Mask (Doubleword)
45954600#[ inline]
45964601#[ target_feature( enable = "vector" ) ]
4602+ #[ rustc_legacy_const_generics( 0 , 1 ) ]
45974603#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
45984604#[ cfg_attr( test, assert_instr( vgmg, L = 3 , H = 5 ) ) ]
45994605pub unsafe fn vec_genmasks_64 < const L : u8 , const H : u8 > ( ) -> vector_unsigned_long_long {
@@ -4810,6 +4816,7 @@ pub unsafe fn vec_subec_u128(
48104816/// Vector Splat Signed Byte
48114817#[ inline]
48124818#[ target_feature( enable = "vector" ) ]
4819+ #[ rustc_legacy_const_generics( 0 ) ]
48134820#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48144821#[ cfg_attr( test, assert_instr( vrepib, IMM = 42 ) ) ]
48154822pub unsafe fn vec_splat_s8 < const IMM : i8 > ( ) -> vector_signed_char {
@@ -4819,6 +4826,7 @@ pub unsafe fn vec_splat_s8<const IMM: i8>() -> vector_signed_char {
48194826/// Vector Splat Signed Halfword
48204827#[ inline]
48214828#[ target_feature( enable = "vector" ) ]
4829+ #[ rustc_legacy_const_generics( 0 ) ]
48224830#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48234831#[ cfg_attr( test, assert_instr( vrepih, IMM = 42 ) ) ]
48244832pub unsafe fn vec_splat_s16 < const IMM : i16 > ( ) -> vector_signed_short {
@@ -4828,6 +4836,7 @@ pub unsafe fn vec_splat_s16<const IMM: i16>() -> vector_signed_short {
48284836/// Vector Splat Signed Word
48294837#[ inline]
48304838#[ target_feature( enable = "vector" ) ]
4839+ #[ rustc_legacy_const_generics( 0 ) ]
48314840#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48324841#[ cfg_attr( test, assert_instr( vrepif, IMM = 42 ) ) ]
48334842pub unsafe fn vec_splat_s32 < const IMM : i16 > ( ) -> vector_signed_int {
@@ -4837,6 +4846,7 @@ pub unsafe fn vec_splat_s32<const IMM: i16>() -> vector_signed_int {
48374846/// Vector Splat Signed Doubleword
48384847#[ inline]
48394848#[ target_feature( enable = "vector" ) ]
4849+ #[ rustc_legacy_const_generics( 0 ) ]
48404850#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48414851#[ cfg_attr( test, assert_instr( vrepig, IMM = 42 ) ) ]
48424852pub unsafe fn vec_splat_s64 < const IMM : i16 > ( ) -> vector_signed_long_long {
@@ -4846,6 +4856,7 @@ pub unsafe fn vec_splat_s64<const IMM: i16>() -> vector_signed_long_long {
48464856/// Vector Splat Unsigned Byte
48474857#[ inline]
48484858#[ target_feature( enable = "vector" ) ]
4859+ #[ rustc_legacy_const_generics( 0 ) ]
48494860#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48504861#[ cfg_attr( test, assert_instr( vrepib, IMM = 42 ) ) ]
48514862pub unsafe fn vec_splat_u8 < const IMM : u8 > ( ) -> vector_unsigned_char {
@@ -4855,6 +4866,7 @@ pub unsafe fn vec_splat_u8<const IMM: u8>() -> vector_unsigned_char {
48554866/// Vector Splat Unsigned Halfword
48564867#[ inline]
48574868#[ target_feature( enable = "vector" ) ]
4869+ #[ rustc_legacy_const_generics( 0 ) ]
48584870#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48594871#[ cfg_attr( test, assert_instr( vrepih, IMM = 42 ) ) ]
48604872pub unsafe fn vec_splat_u16 < const IMM : i16 > ( ) -> vector_unsigned_short {
@@ -4864,6 +4876,7 @@ pub unsafe fn vec_splat_u16<const IMM: i16>() -> vector_unsigned_short {
48644876/// Vector Splat Unsigned Word
48654877#[ inline]
48664878#[ target_feature( enable = "vector" ) ]
4879+ #[ rustc_legacy_const_generics( 0 ) ]
48674880#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48684881#[ cfg_attr( test, assert_instr( vrepif, IMM = 42 ) ) ]
48694882pub unsafe fn vec_splat_u32 < const IMM : i16 > ( ) -> vector_unsigned_int {
@@ -4873,6 +4886,7 @@ pub unsafe fn vec_splat_u32<const IMM: i16>() -> vector_unsigned_int {
48734886/// Vector Splat Unsigned Doubleword
48744887#[ inline]
48754888#[ target_feature( enable = "vector" ) ]
4889+ #[ rustc_legacy_const_generics( 0 ) ]
48764890#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
48774891#[ cfg_attr( test, assert_instr( vrepig, IMM = 42 ) ) ]
48784892pub unsafe fn vec_splat_u64 < const IMM : i16 > ( ) -> vector_unsigned_long_long {
@@ -4944,6 +4958,7 @@ pub unsafe fn vec_load_pair<T: sealed::VectorLoadPair>(a: T::ElementType, b: T::
49444958/// Vector Load to Block Boundary
49454959#[ inline]
49464960#[ target_feature( enable = "vector" ) ]
4961+ #[ rustc_legacy_const_generics( 1 ) ]
49474962#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
49484963pub unsafe fn vec_load_bndry < T : sealed:: VectorLoad , const BLOCK_BOUNDARY : u16 > (
49494964 ptr : * const T :: ElementType ,
@@ -5141,6 +5156,7 @@ pub unsafe fn vec_bperm_u128(
51415156/// Vector Gather Element
51425157#[ inline]
51435158#[ target_feature( enable = "vector" ) ]
5159+ #[ rustc_legacy_const_generics( 3 ) ]
51445160#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
51455161pub unsafe fn vec_gather_element < T : sealed:: VectorGatherElement , const D : u32 > (
51465162 a : T ,
@@ -5205,6 +5221,7 @@ pub const __VEC_CLASS_FP_NOT_NORMAL: u32 =
52055221/// You can use the `__VEC_CLASS_FP_*` constants as the argument for this operand
52065222#[ inline]
52075223#[ target_feature( enable = "vector" ) ]
5224+ #[ rustc_legacy_const_generics( 1 ) ]
52085225#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
52095226pub unsafe fn vec_fp_test_data_class < T : sealed:: VectorFpTestDataClass , const CLASS : u32 > (
52105227 a : T ,
@@ -5366,6 +5383,7 @@ pub unsafe fn vec_cp_until_zero_cc<T: sealed::VectorCopyUntilZeroCC>(a: T) -> (T
53665383/// Vector Multiply Sum Logical
53675384#[ inline]
53685385#[ target_feature( enable = "vector-enhancements-1" ) ]
5386+ #[ rustc_legacy_const_generics( 3 ) ]
53695387#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
53705388#[ cfg_attr(
53715389 all( test, target_feature = "vector-enhancements-1" ) ,
@@ -5387,6 +5405,7 @@ pub unsafe fn vec_msum_u128<const D: u32>(
53875405/// Vector Shift Left Double by Byte
53885406#[ inline]
53895407#[ target_feature( enable = "vector" ) ]
5408+ #[ rustc_legacy_const_generics( 2 ) ]
53905409#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
53915410pub unsafe fn vec_sld < T : sealed:: VectorSld , const C : u32 > ( a : T , b : T ) -> T {
53925411 static_assert_uimm_bits ! ( C , 4 ) ;
@@ -5396,6 +5415,7 @@ pub unsafe fn vec_sld<T: sealed::VectorSld, const C: u32>(a: T, b: T) -> T {
53965415/// Vector Shift Left Double by Word
53975416#[ inline]
53985417#[ target_feature( enable = "vector" ) ]
5418+ #[ rustc_legacy_const_generics( 2 ) ]
53995419#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
54005420pub unsafe fn vec_sldw < T : sealed:: VectorSld , const C : u32 > ( a : T , b : T ) -> T {
54015421 static_assert_uimm_bits ! ( C , 2 ) ;
@@ -5405,6 +5425,7 @@ pub unsafe fn vec_sldw<T: sealed::VectorSld, const C: u32>(a: T, b: T) -> T {
54055425/// Vector Shift Left Double by Bit
54065426#[ inline]
54075427#[ target_feature( enable = "vector-enhancements-2" ) ]
5428+ #[ rustc_legacy_const_generics( 2 ) ]
54085429#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
54095430pub unsafe fn vec_sldb < T : sealed:: VectorSld , const C : u32 > ( a : T , b : T ) -> T {
54105431 static_assert_uimm_bits ! ( C , 3 ) ;
@@ -5414,6 +5435,7 @@ pub unsafe fn vec_sldb<T: sealed::VectorSld, const C: u32>(a: T, b: T) -> T {
54145435/// Vector Shift Right Double by Bit
54155436#[ inline]
54165437#[ target_feature( enable = "vector-enhancements-2" ) ]
5438+ #[ rustc_legacy_const_generics( 2 ) ]
54175439#[ unstable( feature = "stdarch_s390x" , issue = "135681" ) ]
54185440pub unsafe fn vec_srdb < T : sealed:: VectorSrdb , const C : u32 > ( a : T , b : T ) -> T {
54195441 static_assert_uimm_bits ! ( C , 3 ) ;
0 commit comments