"Li, Pan2" <pan2...@intel.com> writes:
> Hi Richard S,
>
> Please feel free to let me know if there is any further comments in v2. 
> Thanks a lot.

Looks good to me too.  Sorry, didn't realise you were waiting for a second ack.

Thanks,
Richard

>
> Pan
>
>
> -----Original Message-----
> From: Li, Pan2 
> Sent: Thursday, August 1, 2024 8:11 PM
> To: Richard Biener <richard.guent...@gmail.com>
> Cc: gcc-patches@gcc.gnu.org; juzhe.zh...@rivai.ai; kito.ch...@gmail.com; 
> tamar.christ...@arm.com; jeffreya...@gmail.com; rdapp....@gmail.com
> Subject: RE: [PATCH v2] Internal-fn: Handle vector bool type for type strict 
> match mode [PR116103]
>
>> Still OK.
>
> Thanks Richard, let me wait the final confirmation from Richard S.
>
> Pan
>
> -----Original Message-----
> From: Richard Biener <richard.guent...@gmail.com> 
> Sent: Tuesday, July 30, 2024 5:03 PM
> To: Li, Pan2 <pan2...@intel.com>
> Cc: gcc-patches@gcc.gnu.org; juzhe.zh...@rivai.ai; kito.ch...@gmail.com; 
> tamar.christ...@arm.com; jeffreya...@gmail.com; rdapp....@gmail.com
> Subject: Re: [PATCH v2] Internal-fn: Handle vector bool type for type strict 
> match mode [PR116103]
>
> On Tue, Jul 30, 2024 at 5:08 AM <pan2...@intel.com> wrote:
>>
>> From: Pan Li <pan2...@intel.com>
>>
>> For some target like target=amdgcn-amdhsa,  we need to take care of
>> vector bool types prior to general vector mode types.  Or we may have
>> the asm check failure as below.
>>
>> gcc.target/gcn/cond_smax_1.c scan-assembler-times \\tv_cmp_gt_i32\\tvcc, 
>> s[0-9]+, v[0-9]+ 80
>> gcc.target/gcn/cond_smin_1.c scan-assembler-times \\tv_cmp_gt_i32\\tvcc, 
>> s[0-9]+, v[0-9]+ 80
>> gcc.target/gcn/cond_umax_1.c scan-assembler-times \\tv_cmp_gt_i32\\tvcc, 
>> s[0-9]+, v[0-9]+ 56
>> gcc.target/gcn/cond_umin_1.c scan-assembler-times \\tv_cmp_gt_i32\\tvcc, 
>> s[0-9]+, v[0-9]+ 56
>> gcc.dg/tree-ssa/loop-bound-2.c scan-tree-dump-not ivopts "zero if "
>>
>> The below test suites are passed for this patch.
>> 1. The rv64gcv fully regression tests.
>> 2. The x86 bootstrap tests.
>> 3. The x86 fully regression tests.
>> 4. The amdgcn test case as above.
>
> Still OK.
>
> Richard.
>
>> gcc/ChangeLog:
>>
>>         * internal-fn.cc (type_strictly_matches_mode_p): Add handling
>>         for vector bool type.
>>
>> Signed-off-by: Pan Li <pan2...@intel.com>
>> ---
>>  gcc/internal-fn.cc | 10 ++++++++++
>>  1 file changed, 10 insertions(+)
>>
>> diff --git a/gcc/internal-fn.cc b/gcc/internal-fn.cc
>> index 8a2e07f2f96..966594a52ed 100644
>> --- a/gcc/internal-fn.cc
>> +++ b/gcc/internal-fn.cc
>> @@ -4171,6 +4171,16 @@ direct_internal_fn_optab (internal_fn fn)
>>  static bool
>>  type_strictly_matches_mode_p (const_tree type)
>>  {
>> +  /* The masked vector operations have both vector data operands and vector
>> +     boolean operands.  The vector data operands are expected to have a 
>> vector
>> +     mode,  but the vector boolean operands can be an integer mode rather 
>> than
>> +     a vector mode,  depending on how TARGET_VECTORIZE_GET_MASK_MODE is
>> +     defined.  PR116103.  */
>> +  if (VECTOR_BOOLEAN_TYPE_P (type)
>> +      && SCALAR_INT_MODE_P (TYPE_MODE (type))
>> +      && TYPE_PRECISION (TREE_TYPE (type)) == 1)
>> +    return true;
>> +
>>    if (VECTOR_TYPE_P (type))
>>      return VECTOR_MODE_P (TYPE_MODE (type));
>>
>> --
>> 2.34.1
>>

Reply via email to