diff mbox series

s390: Streamline NNPA builtins with their LLVM counterparts

Message ID 20231116120730.1312100-1-stefansf@linux.ibm.com
State New
Headers show
Series s390: Streamline NNPA builtins with their LLVM counterparts | expand

Commit Message

Stefan Schulze Frielinghaus Nov. 16, 2023, 12:07 p.m. UTC
For the opaque NNP-data type prefer unsigned over signed integer types.

gcc/ChangeLog:

	* config/s390/s390-builtin-types.def: Add/remove types.
	* config/s390/s390-builtins.def
	(s390_vclfnhs,s390_vclfnls,s390_vcrnfs,s390_vcfn,s390_vcnf):
	Replace type V8HI with UV8HI.

gcc/testsuite/ChangeLog:

	* gcc.target/s390/zvector/vec-nnpa-fp16-convert.c: Replace V8HI
	types with UV8HI.
	* gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c: Dito.
	* gcc.target/s390/zvector/vec_convert_from_fp16.c: Dito.
	* gcc.target/s390/zvector/vec_convert_to_fp16.c: Dito.
	* gcc.target/s390/zvector/vec_extend_to_fp32_hi.c: Dito.
	* gcc.target/s390/zvector/vec_extend_to_fp32_lo.c: Dito.
	* gcc.target/s390/zvector/vec_round_from_fp32.c: Dito.
---
 gcc/config/s390/s390-builtin-types.def                 |  5 ++---
 gcc/config/s390/s390-builtins.def                      | 10 +++++-----
 .../gcc.target/s390/zvector/vec-nnpa-fp16-convert.c    |  6 +++---
 .../gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c  |  2 +-
 .../gcc.target/s390/zvector/vec_convert_from_fp16.c    |  4 ++--
 .../gcc.target/s390/zvector/vec_convert_to_fp16.c      |  4 ++--
 .../gcc.target/s390/zvector/vec_extend_to_fp32_hi.c    |  2 +-
 .../gcc.target/s390/zvector/vec_extend_to_fp32_lo.c    |  2 +-
 .../gcc.target/s390/zvector/vec_round_from_fp32.c      |  2 +-
 9 files changed, 18 insertions(+), 19 deletions(-)

Comments

Stefan Schulze Frielinghaus Nov. 27, 2023, 9:12 a.m. UTC | #1
Ping.

On Thu, Nov 16, 2023 at 01:07:30PM +0100, Stefan Schulze Frielinghaus wrote:
> For the opaque NNP-data type prefer unsigned over signed integer types.
> 
> gcc/ChangeLog:
> 
> 	* config/s390/s390-builtin-types.def: Add/remove types.
> 	* config/s390/s390-builtins.def
> 	(s390_vclfnhs,s390_vclfnls,s390_vcrnfs,s390_vcfn,s390_vcnf):
> 	Replace type V8HI with UV8HI.
> 
> gcc/testsuite/ChangeLog:
> 
> 	* gcc.target/s390/zvector/vec-nnpa-fp16-convert.c: Replace V8HI
> 	types with UV8HI.
> 	* gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c: Dito.
> 	* gcc.target/s390/zvector/vec_convert_from_fp16.c: Dito.
> 	* gcc.target/s390/zvector/vec_convert_to_fp16.c: Dito.
> 	* gcc.target/s390/zvector/vec_extend_to_fp32_hi.c: Dito.
> 	* gcc.target/s390/zvector/vec_extend_to_fp32_lo.c: Dito.
> 	* gcc.target/s390/zvector/vec_round_from_fp32.c: Dito.
> ---
>  gcc/config/s390/s390-builtin-types.def                 |  5 ++---
>  gcc/config/s390/s390-builtins.def                      | 10 +++++-----
>  .../gcc.target/s390/zvector/vec-nnpa-fp16-convert.c    |  6 +++---
>  .../gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c  |  2 +-
>  .../gcc.target/s390/zvector/vec_convert_from_fp16.c    |  4 ++--
>  .../gcc.target/s390/zvector/vec_convert_to_fp16.c      |  4 ++--
>  .../gcc.target/s390/zvector/vec_extend_to_fp32_hi.c    |  2 +-
>  .../gcc.target/s390/zvector/vec_extend_to_fp32_lo.c    |  2 +-
>  .../gcc.target/s390/zvector/vec_round_from_fp32.c      |  2 +-
>  9 files changed, 18 insertions(+), 19 deletions(-)
> 
> diff --git a/gcc/config/s390/s390-builtin-types.def b/gcc/config/s390/s390-builtin-types.def
> index 3d8b30cdcc8..0bf759bd77a 100644
> --- a/gcc/config/s390/s390-builtin-types.def
> +++ b/gcc/config/s390/s390-builtin-types.def
> @@ -265,9 +265,9 @@ DEF_FN_TYPE_2 (BT_FN_V2DI_V2DF_V2DF, BT_V2DI, BT_V2DF, BT_V2DF)
>  DEF_FN_TYPE_2 (BT_FN_V2DI_V2DI_V2DI, BT_V2DI, BT_V2DI, BT_V2DI)
>  DEF_FN_TYPE_2 (BT_FN_V2DI_V4SI_V4SI, BT_V2DI, BT_V4SI, BT_V4SI)
>  DEF_FN_TYPE_2 (BT_FN_V4SF_FLT_INT, BT_V4SF, BT_FLT, BT_INT)
> +DEF_FN_TYPE_2 (BT_FN_V4SF_UV8HI_UINT, BT_V4SF, BT_UV8HI, BT_UINT)
>  DEF_FN_TYPE_2 (BT_FN_V4SF_V4SF_UCHAR, BT_V4SF, BT_V4SF, BT_UCHAR)
>  DEF_FN_TYPE_2 (BT_FN_V4SF_V4SF_V4SF, BT_V4SF, BT_V4SF, BT_V4SF)
> -DEF_FN_TYPE_2 (BT_FN_V4SF_V8HI_UINT, BT_V4SF, BT_V8HI, BT_UINT)
>  DEF_FN_TYPE_2 (BT_FN_V4SI_BV4SI_V4SI, BT_V4SI, BT_BV4SI, BT_V4SI)
>  DEF_FN_TYPE_2 (BT_FN_V4SI_INT_VOIDCONSTPTR, BT_V4SI, BT_INT, BT_VOIDCONSTPTR)
>  DEF_FN_TYPE_2 (BT_FN_V4SI_UV4SI_UV4SI, BT_V4SI, BT_UV4SI, BT_UV4SI)
> @@ -279,7 +279,6 @@ DEF_FN_TYPE_2 (BT_FN_V8HI_BV8HI_V8HI, BT_V8HI, BT_BV8HI, BT_V8HI)
>  DEF_FN_TYPE_2 (BT_FN_V8HI_UV8HI_UV8HI, BT_V8HI, BT_UV8HI, BT_UV8HI)
>  DEF_FN_TYPE_2 (BT_FN_V8HI_V16QI_V16QI, BT_V8HI, BT_V16QI, BT_V16QI)
>  DEF_FN_TYPE_2 (BT_FN_V8HI_V4SI_V4SI, BT_V8HI, BT_V4SI, BT_V4SI)
> -DEF_FN_TYPE_2 (BT_FN_V8HI_V8HI_UINT, BT_V8HI, BT_V8HI, BT_UINT)
>  DEF_FN_TYPE_2 (BT_FN_V8HI_V8HI_V8HI, BT_V8HI, BT_V8HI, BT_V8HI)
>  DEF_FN_TYPE_2 (BT_FN_VOID_UINT64PTR_UINT64, BT_VOID, BT_UINT64PTR, BT_UINT64)
>  DEF_FN_TYPE_2 (BT_FN_VOID_V2DF_FLTPTR, BT_VOID, BT_V2DF, BT_FLTPTR)
> @@ -317,6 +316,7 @@ DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_USHORT_INT, BT_UV8HI, BT_UV8HI, BT_USHORT, BT_I
>  DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_INT, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_INT)
>  DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_INTPTR, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_INTPTR)
>  DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_UV8HI, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_UV8HI)
> +DEF_FN_TYPE_3 (BT_FN_UV8HI_V4SF_V4SF_UINT, BT_UV8HI, BT_V4SF, BT_V4SF, BT_UINT)
>  DEF_FN_TYPE_3 (BT_FN_V16QI_UV16QI_UV16QI_INTPTR, BT_V16QI, BT_UV16QI, BT_UV16QI, BT_INTPTR)
>  DEF_FN_TYPE_3 (BT_FN_V16QI_V16QI_V16QI_INTPTR, BT_V16QI, BT_V16QI, BT_V16QI, BT_INTPTR)
>  DEF_FN_TYPE_3 (BT_FN_V16QI_V16QI_V16QI_V16QI, BT_V16QI, BT_V16QI, BT_V16QI, BT_V16QI)
> @@ -347,7 +347,6 @@ DEF_FN_TYPE_3 (BT_FN_V4SI_V4SI_V4SI_V4SI, BT_V4SI, BT_V4SI, BT_V4SI, BT_V4SI)
>  DEF_FN_TYPE_3 (BT_FN_V4SI_V8HI_V8HI_V4SI, BT_V4SI, BT_V8HI, BT_V8HI, BT_V4SI)
>  DEF_FN_TYPE_3 (BT_FN_V8HI_UV8HI_UV8HI_INTPTR, BT_V8HI, BT_UV8HI, BT_UV8HI, BT_INTPTR)
>  DEF_FN_TYPE_3 (BT_FN_V8HI_V16QI_V16QI_V8HI, BT_V8HI, BT_V16QI, BT_V16QI, BT_V8HI)
> -DEF_FN_TYPE_3 (BT_FN_V8HI_V4SF_V4SF_UINT, BT_V8HI, BT_V4SF, BT_V4SF, BT_UINT)
>  DEF_FN_TYPE_3 (BT_FN_V8HI_V4SI_V4SI_INTPTR, BT_V8HI, BT_V4SI, BT_V4SI, BT_INTPTR)
>  DEF_FN_TYPE_3 (BT_FN_V8HI_V8HI_V8HI_INTPTR, BT_V8HI, BT_V8HI, BT_V8HI, BT_INTPTR)
>  DEF_FN_TYPE_3 (BT_FN_V8HI_V8HI_V8HI_V8HI, BT_V8HI, BT_V8HI, BT_V8HI, BT_V8HI)
> diff --git a/gcc/config/s390/s390-builtins.def b/gcc/config/s390/s390-builtins.def
> index 964d86c74a0..f331eba100a 100644
> --- a/gcc/config/s390/s390-builtins.def
> +++ b/gcc/config/s390/s390-builtins.def
> @@ -3037,10 +3037,10 @@ B_DEF      (s390_vstrszf,                vstrszv4si,        0,
>  
>  /* arch 14 builtins */
>  
> -B_DEF      (s390_vclfnhs,                vclfnhs_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_V8HI_UINT)
> -B_DEF      (s390_vclfnls,                vclfnls_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_V8HI_UINT)
> +B_DEF      (s390_vclfnhs,                vclfnhs_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_UV8HI_UINT)
> +B_DEF      (s390_vclfnls,                vclfnls_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_UV8HI_UINT)
>  
> -B_DEF      (s390_vcrnfs,                 vcrnfs_v8hi,       0,                  B_NNPA,             O3_U4,              BT_FN_V8HI_V4SF_V4SF_UINT)
> +B_DEF      (s390_vcrnfs,                 vcrnfs_v8hi,       0,                  B_NNPA,             O3_U4,              BT_FN_UV8HI_V4SF_V4SF_UINT)
>  
> -B_DEF      (s390_vcfn,                   vcfn_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_V8HI_V8HI_UINT)
> -B_DEF      (s390_vcnf,                   vcnf_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_V8HI_V8HI_UINT)
> +B_DEF      (s390_vcfn,                   vcfn_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_UV8HI_UV8HI_UINT)
> +B_DEF      (s390_vcnf,                   vcnf_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_UV8HI_UV8HI_UINT)
> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
> index 5ed7e050194..7d7c13e471e 100644
> --- a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
> @@ -10,10 +10,10 @@ main ()
>    vector float fp1 = (vector float){ 1.0f, 2.0f, 3.0f, 4.0f };
>    vector float fp2 = (vector float){ 5.0f, 6.0f, 7.0f, 8.0f };
>  
> -  vector short int tmp1 = vec_round_from_fp32 (fp1, fp2, 0);
> +  vector unsigned short int tmp1 = vec_round_from_fp32 (fp1, fp2, 0);
>  
> -  vector short int tmp2 = vec_convert_to_fp16 (tmp1, 0);
> -  vector short int tmp3 = vec_convert_from_fp16 (tmp2, 0);
> +  vector unsigned short int tmp2 = vec_convert_to_fp16 (tmp1, 0);
> +  vector unsigned short int tmp3 = vec_convert_from_fp16 (tmp2, 0);
>  
>    vector float fp1_ret = vec_extend_to_fp32_hi (tmp3, 0);
>    vector float fp2_ret = vec_extend_to_fp32_lo (tmp3, 0);
> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
> index 321488a09ac..6dcfad4cada 100644
> --- a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
> @@ -9,7 +9,7 @@ main ()
>  {
>    vector float fp1 = (vector float){ 1.0f, 2.0f, 3.0f, 4.0f };
>    vector float fp2 = (vector float){ 5.0f, 6.0f, 7.0f, 8.0f };
> -  vector short int conv = vec_round_from_fp32 (fp1, fp2, 0);
> +  vector unsigned short int conv = vec_round_from_fp32 (fp1, fp2, 0);
>    vector float fp1_ret = vec_extend_to_fp32_hi (conv, 0);
>    vector float fp2_ret = vec_extend_to_fp32_lo (conv, 0);
>  
> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
> index fc7ccf0ebaa..86fad2cd987 100644
> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
> @@ -3,8 +3,8 @@
>  
>  #include <vecintrin.h>
>  
> -vector short int
> -test_vec_convert_from_fp16 (vector short int a)
> +vector unsigned short int
> +test_vec_convert_from_fp16 (vector unsigned short int a)
>  {
>    return vec_convert_from_fp16 (a, 0);
>  }
> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
> index 7232643f063..eda29529f74 100644
> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
> @@ -3,8 +3,8 @@
>  
>  #include <vecintrin.h>
>  
> -vector short int
> -test_vec_convert_to_fp16 (vector short int a)
> +vector unsigned short int
> +test_vec_convert_to_fp16 (vector unsigned short int a)
>  {
>    return vec_convert_to_fp16 (a, 0);
>  }
> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
> index feb5e784e0c..feedef82065 100644
> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
> @@ -4,7 +4,7 @@
>  #include <vecintrin.h>
>  
>  vector float
> -test_vec_extend_to_fp32_hi (vector short int a)
> +test_vec_extend_to_fp32_hi (vector unsigned short int a)
>  {
>    return vec_extend_to_fp32_hi (a, 0);
>  }
> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
> index 179de17de9e..dbdf5305839 100644
> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
> @@ -4,7 +4,7 @@
>  #include <vecintrin.h>
>  
>  vector float
> -test_vec_extend_to_fp32_lo (vector short int a)
> +test_vec_extend_to_fp32_lo (vector unsigned short int a)
>  {
>    return vec_extend_to_fp32_lo (a, 0);
>  }
> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c b/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
> index 839245228b9..617a8200cd1 100644
> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
> @@ -3,7 +3,7 @@
>  
>  #include <vecintrin.h>
>  
> -vector short int
> +vector unsigned short int
>  test_vec_round_from_fp32 (vector float hi, vector float lo)
>  {
>    return vec_round_from_fp32 (hi, lo, 0);
> -- 
> 2.41.0
>
Andreas Krebbel Nov. 27, 2023, 9:21 a.m. UTC | #2
Ok, thanks!

Andreas

On 11/27/23 10:12, Stefan Schulze Frielinghaus wrote:
> Ping.
> 
> On Thu, Nov 16, 2023 at 01:07:30PM +0100, Stefan Schulze Frielinghaus wrote:
>> For the opaque NNP-data type prefer unsigned over signed integer types.
>>
>> gcc/ChangeLog:
>>
>> 	* config/s390/s390-builtin-types.def: Add/remove types.
>> 	* config/s390/s390-builtins.def
>> 	(s390_vclfnhs,s390_vclfnls,s390_vcrnfs,s390_vcfn,s390_vcnf):
>> 	Replace type V8HI with UV8HI.
>>
>> gcc/testsuite/ChangeLog:
>>
>> 	* gcc.target/s390/zvector/vec-nnpa-fp16-convert.c: Replace V8HI
>> 	types with UV8HI.
>> 	* gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c: Dito.
>> 	* gcc.target/s390/zvector/vec_convert_from_fp16.c: Dito.
>> 	* gcc.target/s390/zvector/vec_convert_to_fp16.c: Dito.
>> 	* gcc.target/s390/zvector/vec_extend_to_fp32_hi.c: Dito.
>> 	* gcc.target/s390/zvector/vec_extend_to_fp32_lo.c: Dito.
>> 	* gcc.target/s390/zvector/vec_round_from_fp32.c: Dito.
>> ---
>>  gcc/config/s390/s390-builtin-types.def                 |  5 ++---
>>  gcc/config/s390/s390-builtins.def                      | 10 +++++-----
>>  .../gcc.target/s390/zvector/vec-nnpa-fp16-convert.c    |  6 +++---
>>  .../gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c  |  2 +-
>>  .../gcc.target/s390/zvector/vec_convert_from_fp16.c    |  4 ++--
>>  .../gcc.target/s390/zvector/vec_convert_to_fp16.c      |  4 ++--
>>  .../gcc.target/s390/zvector/vec_extend_to_fp32_hi.c    |  2 +-
>>  .../gcc.target/s390/zvector/vec_extend_to_fp32_lo.c    |  2 +-
>>  .../gcc.target/s390/zvector/vec_round_from_fp32.c      |  2 +-
>>  9 files changed, 18 insertions(+), 19 deletions(-)
>>
>> diff --git a/gcc/config/s390/s390-builtin-types.def b/gcc/config/s390/s390-builtin-types.def
>> index 3d8b30cdcc8..0bf759bd77a 100644
>> --- a/gcc/config/s390/s390-builtin-types.def
>> +++ b/gcc/config/s390/s390-builtin-types.def
>> @@ -265,9 +265,9 @@ DEF_FN_TYPE_2 (BT_FN_V2DI_V2DF_V2DF, BT_V2DI, BT_V2DF, BT_V2DF)
>>  DEF_FN_TYPE_2 (BT_FN_V2DI_V2DI_V2DI, BT_V2DI, BT_V2DI, BT_V2DI)
>>  DEF_FN_TYPE_2 (BT_FN_V2DI_V4SI_V4SI, BT_V2DI, BT_V4SI, BT_V4SI)
>>  DEF_FN_TYPE_2 (BT_FN_V4SF_FLT_INT, BT_V4SF, BT_FLT, BT_INT)
>> +DEF_FN_TYPE_2 (BT_FN_V4SF_UV8HI_UINT, BT_V4SF, BT_UV8HI, BT_UINT)
>>  DEF_FN_TYPE_2 (BT_FN_V4SF_V4SF_UCHAR, BT_V4SF, BT_V4SF, BT_UCHAR)
>>  DEF_FN_TYPE_2 (BT_FN_V4SF_V4SF_V4SF, BT_V4SF, BT_V4SF, BT_V4SF)
>> -DEF_FN_TYPE_2 (BT_FN_V4SF_V8HI_UINT, BT_V4SF, BT_V8HI, BT_UINT)
>>  DEF_FN_TYPE_2 (BT_FN_V4SI_BV4SI_V4SI, BT_V4SI, BT_BV4SI, BT_V4SI)
>>  DEF_FN_TYPE_2 (BT_FN_V4SI_INT_VOIDCONSTPTR, BT_V4SI, BT_INT, BT_VOIDCONSTPTR)
>>  DEF_FN_TYPE_2 (BT_FN_V4SI_UV4SI_UV4SI, BT_V4SI, BT_UV4SI, BT_UV4SI)
>> @@ -279,7 +279,6 @@ DEF_FN_TYPE_2 (BT_FN_V8HI_BV8HI_V8HI, BT_V8HI, BT_BV8HI, BT_V8HI)
>>  DEF_FN_TYPE_2 (BT_FN_V8HI_UV8HI_UV8HI, BT_V8HI, BT_UV8HI, BT_UV8HI)
>>  DEF_FN_TYPE_2 (BT_FN_V8HI_V16QI_V16QI, BT_V8HI, BT_V16QI, BT_V16QI)
>>  DEF_FN_TYPE_2 (BT_FN_V8HI_V4SI_V4SI, BT_V8HI, BT_V4SI, BT_V4SI)
>> -DEF_FN_TYPE_2 (BT_FN_V8HI_V8HI_UINT, BT_V8HI, BT_V8HI, BT_UINT)
>>  DEF_FN_TYPE_2 (BT_FN_V8HI_V8HI_V8HI, BT_V8HI, BT_V8HI, BT_V8HI)
>>  DEF_FN_TYPE_2 (BT_FN_VOID_UINT64PTR_UINT64, BT_VOID, BT_UINT64PTR, BT_UINT64)
>>  DEF_FN_TYPE_2 (BT_FN_VOID_V2DF_FLTPTR, BT_VOID, BT_V2DF, BT_FLTPTR)
>> @@ -317,6 +316,7 @@ DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_USHORT_INT, BT_UV8HI, BT_UV8HI, BT_USHORT, BT_I
>>  DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_INT, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_INT)
>>  DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_INTPTR, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_INTPTR)
>>  DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_UV8HI, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_UV8HI)
>> +DEF_FN_TYPE_3 (BT_FN_UV8HI_V4SF_V4SF_UINT, BT_UV8HI, BT_V4SF, BT_V4SF, BT_UINT)
>>  DEF_FN_TYPE_3 (BT_FN_V16QI_UV16QI_UV16QI_INTPTR, BT_V16QI, BT_UV16QI, BT_UV16QI, BT_INTPTR)
>>  DEF_FN_TYPE_3 (BT_FN_V16QI_V16QI_V16QI_INTPTR, BT_V16QI, BT_V16QI, BT_V16QI, BT_INTPTR)
>>  DEF_FN_TYPE_3 (BT_FN_V16QI_V16QI_V16QI_V16QI, BT_V16QI, BT_V16QI, BT_V16QI, BT_V16QI)
>> @@ -347,7 +347,6 @@ DEF_FN_TYPE_3 (BT_FN_V4SI_V4SI_V4SI_V4SI, BT_V4SI, BT_V4SI, BT_V4SI, BT_V4SI)
>>  DEF_FN_TYPE_3 (BT_FN_V4SI_V8HI_V8HI_V4SI, BT_V4SI, BT_V8HI, BT_V8HI, BT_V4SI)
>>  DEF_FN_TYPE_3 (BT_FN_V8HI_UV8HI_UV8HI_INTPTR, BT_V8HI, BT_UV8HI, BT_UV8HI, BT_INTPTR)
>>  DEF_FN_TYPE_3 (BT_FN_V8HI_V16QI_V16QI_V8HI, BT_V8HI, BT_V16QI, BT_V16QI, BT_V8HI)
>> -DEF_FN_TYPE_3 (BT_FN_V8HI_V4SF_V4SF_UINT, BT_V8HI, BT_V4SF, BT_V4SF, BT_UINT)
>>  DEF_FN_TYPE_3 (BT_FN_V8HI_V4SI_V4SI_INTPTR, BT_V8HI, BT_V4SI, BT_V4SI, BT_INTPTR)
>>  DEF_FN_TYPE_3 (BT_FN_V8HI_V8HI_V8HI_INTPTR, BT_V8HI, BT_V8HI, BT_V8HI, BT_INTPTR)
>>  DEF_FN_TYPE_3 (BT_FN_V8HI_V8HI_V8HI_V8HI, BT_V8HI, BT_V8HI, BT_V8HI, BT_V8HI)
>> diff --git a/gcc/config/s390/s390-builtins.def b/gcc/config/s390/s390-builtins.def
>> index 964d86c74a0..f331eba100a 100644
>> --- a/gcc/config/s390/s390-builtins.def
>> +++ b/gcc/config/s390/s390-builtins.def
>> @@ -3037,10 +3037,10 @@ B_DEF      (s390_vstrszf,                vstrszv4si,        0,
>>  
>>  /* arch 14 builtins */
>>  
>> -B_DEF      (s390_vclfnhs,                vclfnhs_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_V8HI_UINT)
>> -B_DEF      (s390_vclfnls,                vclfnls_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_V8HI_UINT)
>> +B_DEF      (s390_vclfnhs,                vclfnhs_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_UV8HI_UINT)
>> +B_DEF      (s390_vclfnls,                vclfnls_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_UV8HI_UINT)
>>  
>> -B_DEF      (s390_vcrnfs,                 vcrnfs_v8hi,       0,                  B_NNPA,             O3_U4,              BT_FN_V8HI_V4SF_V4SF_UINT)
>> +B_DEF      (s390_vcrnfs,                 vcrnfs_v8hi,       0,                  B_NNPA,             O3_U4,              BT_FN_UV8HI_V4SF_V4SF_UINT)
>>  
>> -B_DEF      (s390_vcfn,                   vcfn_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_V8HI_V8HI_UINT)
>> -B_DEF      (s390_vcnf,                   vcnf_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_V8HI_V8HI_UINT)
>> +B_DEF      (s390_vcfn,                   vcfn_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_UV8HI_UV8HI_UINT)
>> +B_DEF      (s390_vcnf,                   vcnf_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_UV8HI_UV8HI_UINT)
>> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
>> index 5ed7e050194..7d7c13e471e 100644
>> --- a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
>> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
>> @@ -10,10 +10,10 @@ main ()
>>    vector float fp1 = (vector float){ 1.0f, 2.0f, 3.0f, 4.0f };
>>    vector float fp2 = (vector float){ 5.0f, 6.0f, 7.0f, 8.0f };
>>  
>> -  vector short int tmp1 = vec_round_from_fp32 (fp1, fp2, 0);
>> +  vector unsigned short int tmp1 = vec_round_from_fp32 (fp1, fp2, 0);
>>  
>> -  vector short int tmp2 = vec_convert_to_fp16 (tmp1, 0);
>> -  vector short int tmp3 = vec_convert_from_fp16 (tmp2, 0);
>> +  vector unsigned short int tmp2 = vec_convert_to_fp16 (tmp1, 0);
>> +  vector unsigned short int tmp3 = vec_convert_from_fp16 (tmp2, 0);
>>  
>>    vector float fp1_ret = vec_extend_to_fp32_hi (tmp3, 0);
>>    vector float fp2_ret = vec_extend_to_fp32_lo (tmp3, 0);
>> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
>> index 321488a09ac..6dcfad4cada 100644
>> --- a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
>> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
>> @@ -9,7 +9,7 @@ main ()
>>  {
>>    vector float fp1 = (vector float){ 1.0f, 2.0f, 3.0f, 4.0f };
>>    vector float fp2 = (vector float){ 5.0f, 6.0f, 7.0f, 8.0f };
>> -  vector short int conv = vec_round_from_fp32 (fp1, fp2, 0);
>> +  vector unsigned short int conv = vec_round_from_fp32 (fp1, fp2, 0);
>>    vector float fp1_ret = vec_extend_to_fp32_hi (conv, 0);
>>    vector float fp2_ret = vec_extend_to_fp32_lo (conv, 0);
>>  
>> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
>> index fc7ccf0ebaa..86fad2cd987 100644
>> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
>> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
>> @@ -3,8 +3,8 @@
>>  
>>  #include <vecintrin.h>
>>  
>> -vector short int
>> -test_vec_convert_from_fp16 (vector short int a)
>> +vector unsigned short int
>> +test_vec_convert_from_fp16 (vector unsigned short int a)
>>  {
>>    return vec_convert_from_fp16 (a, 0);
>>  }
>> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
>> index 7232643f063..eda29529f74 100644
>> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
>> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
>> @@ -3,8 +3,8 @@
>>  
>>  #include <vecintrin.h>
>>  
>> -vector short int
>> -test_vec_convert_to_fp16 (vector short int a)
>> +vector unsigned short int
>> +test_vec_convert_to_fp16 (vector unsigned short int a)
>>  {
>>    return vec_convert_to_fp16 (a, 0);
>>  }
>> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
>> index feb5e784e0c..feedef82065 100644
>> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
>> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
>> @@ -4,7 +4,7 @@
>>  #include <vecintrin.h>
>>  
>>  vector float
>> -test_vec_extend_to_fp32_hi (vector short int a)
>> +test_vec_extend_to_fp32_hi (vector unsigned short int a)
>>  {
>>    return vec_extend_to_fp32_hi (a, 0);
>>  }
>> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
>> index 179de17de9e..dbdf5305839 100644
>> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
>> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
>> @@ -4,7 +4,7 @@
>>  #include <vecintrin.h>
>>  
>>  vector float
>> -test_vec_extend_to_fp32_lo (vector short int a)
>> +test_vec_extend_to_fp32_lo (vector unsigned short int a)
>>  {
>>    return vec_extend_to_fp32_lo (a, 0);
>>  }
>> diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c b/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
>> index 839245228b9..617a8200cd1 100644
>> --- a/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
>> +++ b/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
>> @@ -3,7 +3,7 @@
>>  
>>  #include <vecintrin.h>
>>  
>> -vector short int
>> +vector unsigned short int
>>  test_vec_round_from_fp32 (vector float hi, vector float lo)
>>  {
>>    return vec_round_from_fp32 (hi, lo, 0);
>> -- 
>> 2.41.0
>>
diff mbox series

Patch

diff --git a/gcc/config/s390/s390-builtin-types.def b/gcc/config/s390/s390-builtin-types.def
index 3d8b30cdcc8..0bf759bd77a 100644
--- a/gcc/config/s390/s390-builtin-types.def
+++ b/gcc/config/s390/s390-builtin-types.def
@@ -265,9 +265,9 @@  DEF_FN_TYPE_2 (BT_FN_V2DI_V2DF_V2DF, BT_V2DI, BT_V2DF, BT_V2DF)
 DEF_FN_TYPE_2 (BT_FN_V2DI_V2DI_V2DI, BT_V2DI, BT_V2DI, BT_V2DI)
 DEF_FN_TYPE_2 (BT_FN_V2DI_V4SI_V4SI, BT_V2DI, BT_V4SI, BT_V4SI)
 DEF_FN_TYPE_2 (BT_FN_V4SF_FLT_INT, BT_V4SF, BT_FLT, BT_INT)
+DEF_FN_TYPE_2 (BT_FN_V4SF_UV8HI_UINT, BT_V4SF, BT_UV8HI, BT_UINT)
 DEF_FN_TYPE_2 (BT_FN_V4SF_V4SF_UCHAR, BT_V4SF, BT_V4SF, BT_UCHAR)
 DEF_FN_TYPE_2 (BT_FN_V4SF_V4SF_V4SF, BT_V4SF, BT_V4SF, BT_V4SF)
-DEF_FN_TYPE_2 (BT_FN_V4SF_V8HI_UINT, BT_V4SF, BT_V8HI, BT_UINT)
 DEF_FN_TYPE_2 (BT_FN_V4SI_BV4SI_V4SI, BT_V4SI, BT_BV4SI, BT_V4SI)
 DEF_FN_TYPE_2 (BT_FN_V4SI_INT_VOIDCONSTPTR, BT_V4SI, BT_INT, BT_VOIDCONSTPTR)
 DEF_FN_TYPE_2 (BT_FN_V4SI_UV4SI_UV4SI, BT_V4SI, BT_UV4SI, BT_UV4SI)
@@ -279,7 +279,6 @@  DEF_FN_TYPE_2 (BT_FN_V8HI_BV8HI_V8HI, BT_V8HI, BT_BV8HI, BT_V8HI)
 DEF_FN_TYPE_2 (BT_FN_V8HI_UV8HI_UV8HI, BT_V8HI, BT_UV8HI, BT_UV8HI)
 DEF_FN_TYPE_2 (BT_FN_V8HI_V16QI_V16QI, BT_V8HI, BT_V16QI, BT_V16QI)
 DEF_FN_TYPE_2 (BT_FN_V8HI_V4SI_V4SI, BT_V8HI, BT_V4SI, BT_V4SI)
-DEF_FN_TYPE_2 (BT_FN_V8HI_V8HI_UINT, BT_V8HI, BT_V8HI, BT_UINT)
 DEF_FN_TYPE_2 (BT_FN_V8HI_V8HI_V8HI, BT_V8HI, BT_V8HI, BT_V8HI)
 DEF_FN_TYPE_2 (BT_FN_VOID_UINT64PTR_UINT64, BT_VOID, BT_UINT64PTR, BT_UINT64)
 DEF_FN_TYPE_2 (BT_FN_VOID_V2DF_FLTPTR, BT_VOID, BT_V2DF, BT_FLTPTR)
@@ -317,6 +316,7 @@  DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_USHORT_INT, BT_UV8HI, BT_UV8HI, BT_USHORT, BT_I
 DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_INT, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_INT)
 DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_INTPTR, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_INTPTR)
 DEF_FN_TYPE_3 (BT_FN_UV8HI_UV8HI_UV8HI_UV8HI, BT_UV8HI, BT_UV8HI, BT_UV8HI, BT_UV8HI)
+DEF_FN_TYPE_3 (BT_FN_UV8HI_V4SF_V4SF_UINT, BT_UV8HI, BT_V4SF, BT_V4SF, BT_UINT)
 DEF_FN_TYPE_3 (BT_FN_V16QI_UV16QI_UV16QI_INTPTR, BT_V16QI, BT_UV16QI, BT_UV16QI, BT_INTPTR)
 DEF_FN_TYPE_3 (BT_FN_V16QI_V16QI_V16QI_INTPTR, BT_V16QI, BT_V16QI, BT_V16QI, BT_INTPTR)
 DEF_FN_TYPE_3 (BT_FN_V16QI_V16QI_V16QI_V16QI, BT_V16QI, BT_V16QI, BT_V16QI, BT_V16QI)
@@ -347,7 +347,6 @@  DEF_FN_TYPE_3 (BT_FN_V4SI_V4SI_V4SI_V4SI, BT_V4SI, BT_V4SI, BT_V4SI, BT_V4SI)
 DEF_FN_TYPE_3 (BT_FN_V4SI_V8HI_V8HI_V4SI, BT_V4SI, BT_V8HI, BT_V8HI, BT_V4SI)
 DEF_FN_TYPE_3 (BT_FN_V8HI_UV8HI_UV8HI_INTPTR, BT_V8HI, BT_UV8HI, BT_UV8HI, BT_INTPTR)
 DEF_FN_TYPE_3 (BT_FN_V8HI_V16QI_V16QI_V8HI, BT_V8HI, BT_V16QI, BT_V16QI, BT_V8HI)
-DEF_FN_TYPE_3 (BT_FN_V8HI_V4SF_V4SF_UINT, BT_V8HI, BT_V4SF, BT_V4SF, BT_UINT)
 DEF_FN_TYPE_3 (BT_FN_V8HI_V4SI_V4SI_INTPTR, BT_V8HI, BT_V4SI, BT_V4SI, BT_INTPTR)
 DEF_FN_TYPE_3 (BT_FN_V8HI_V8HI_V8HI_INTPTR, BT_V8HI, BT_V8HI, BT_V8HI, BT_INTPTR)
 DEF_FN_TYPE_3 (BT_FN_V8HI_V8HI_V8HI_V8HI, BT_V8HI, BT_V8HI, BT_V8HI, BT_V8HI)
diff --git a/gcc/config/s390/s390-builtins.def b/gcc/config/s390/s390-builtins.def
index 964d86c74a0..f331eba100a 100644
--- a/gcc/config/s390/s390-builtins.def
+++ b/gcc/config/s390/s390-builtins.def
@@ -3037,10 +3037,10 @@  B_DEF      (s390_vstrszf,                vstrszv4si,        0,
 
 /* arch 14 builtins */
 
-B_DEF      (s390_vclfnhs,                vclfnhs_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_V8HI_UINT)
-B_DEF      (s390_vclfnls,                vclfnls_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_V8HI_UINT)
+B_DEF      (s390_vclfnhs,                vclfnhs_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_UV8HI_UINT)
+B_DEF      (s390_vclfnls,                vclfnls_v8hi,      0,                  B_NNPA,             O2_U4,              BT_FN_V4SF_UV8HI_UINT)
 
-B_DEF      (s390_vcrnfs,                 vcrnfs_v8hi,       0,                  B_NNPA,             O3_U4,              BT_FN_V8HI_V4SF_V4SF_UINT)
+B_DEF      (s390_vcrnfs,                 vcrnfs_v8hi,       0,                  B_NNPA,             O3_U4,              BT_FN_UV8HI_V4SF_V4SF_UINT)
 
-B_DEF      (s390_vcfn,                   vcfn_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_V8HI_V8HI_UINT)
-B_DEF      (s390_vcnf,                   vcnf_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_V8HI_V8HI_UINT)
+B_DEF      (s390_vcfn,                   vcfn_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_UV8HI_UV8HI_UINT)
+B_DEF      (s390_vcnf,                   vcnf_v8hi,         0,                  B_NNPA,             O2_U4,              BT_FN_UV8HI_UV8HI_UINT)
diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
index 5ed7e050194..7d7c13e471e 100644
--- a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
+++ b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp16-convert.c
@@ -10,10 +10,10 @@  main ()
   vector float fp1 = (vector float){ 1.0f, 2.0f, 3.0f, 4.0f };
   vector float fp2 = (vector float){ 5.0f, 6.0f, 7.0f, 8.0f };
 
-  vector short int tmp1 = vec_round_from_fp32 (fp1, fp2, 0);
+  vector unsigned short int tmp1 = vec_round_from_fp32 (fp1, fp2, 0);
 
-  vector short int tmp2 = vec_convert_to_fp16 (tmp1, 0);
-  vector short int tmp3 = vec_convert_from_fp16 (tmp2, 0);
+  vector unsigned short int tmp2 = vec_convert_to_fp16 (tmp1, 0);
+  vector unsigned short int tmp3 = vec_convert_from_fp16 (tmp2, 0);
 
   vector float fp1_ret = vec_extend_to_fp32_hi (tmp3, 0);
   vector float fp2_ret = vec_extend_to_fp32_lo (tmp3, 0);
diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
index 321488a09ac..6dcfad4cada 100644
--- a/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
+++ b/gcc/testsuite/gcc.target/s390/zvector/vec-nnpa-fp32-convert-1.c
@@ -9,7 +9,7 @@  main ()
 {
   vector float fp1 = (vector float){ 1.0f, 2.0f, 3.0f, 4.0f };
   vector float fp2 = (vector float){ 5.0f, 6.0f, 7.0f, 8.0f };
-  vector short int conv = vec_round_from_fp32 (fp1, fp2, 0);
+  vector unsigned short int conv = vec_round_from_fp32 (fp1, fp2, 0);
   vector float fp1_ret = vec_extend_to_fp32_hi (conv, 0);
   vector float fp2_ret = vec_extend_to_fp32_lo (conv, 0);
 
diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
index fc7ccf0ebaa..86fad2cd987 100644
--- a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
+++ b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_from_fp16.c
@@ -3,8 +3,8 @@ 
 
 #include <vecintrin.h>
 
-vector short int
-test_vec_convert_from_fp16 (vector short int a)
+vector unsigned short int
+test_vec_convert_from_fp16 (vector unsigned short int a)
 {
   return vec_convert_from_fp16 (a, 0);
 }
diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
index 7232643f063..eda29529f74 100644
--- a/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
+++ b/gcc/testsuite/gcc.target/s390/zvector/vec_convert_to_fp16.c
@@ -3,8 +3,8 @@ 
 
 #include <vecintrin.h>
 
-vector short int
-test_vec_convert_to_fp16 (vector short int a)
+vector unsigned short int
+test_vec_convert_to_fp16 (vector unsigned short int a)
 {
   return vec_convert_to_fp16 (a, 0);
 }
diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
index feb5e784e0c..feedef82065 100644
--- a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
+++ b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_hi.c
@@ -4,7 +4,7 @@ 
 #include <vecintrin.h>
 
 vector float
-test_vec_extend_to_fp32_hi (vector short int a)
+test_vec_extend_to_fp32_hi (vector unsigned short int a)
 {
   return vec_extend_to_fp32_hi (a, 0);
 }
diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
index 179de17de9e..dbdf5305839 100644
--- a/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
+++ b/gcc/testsuite/gcc.target/s390/zvector/vec_extend_to_fp32_lo.c
@@ -4,7 +4,7 @@ 
 #include <vecintrin.h>
 
 vector float
-test_vec_extend_to_fp32_lo (vector short int a)
+test_vec_extend_to_fp32_lo (vector unsigned short int a)
 {
   return vec_extend_to_fp32_lo (a, 0);
 }
diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c b/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
index 839245228b9..617a8200cd1 100644
--- a/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
+++ b/gcc/testsuite/gcc.target/s390/zvector/vec_round_from_fp32.c
@@ -3,7 +3,7 @@ 
 
 #include <vecintrin.h>
 
-vector short int
+vector unsigned short int
 test_vec_round_from_fp32 (vector float hi, vector float lo)
 {
   return vec_round_from_fp32 (hi, lo, 0);