> On 29 Jul 2025, at 15:15, Remi Machet <rmac...@nvidia.com> wrote:
> 
> 
> On 7/29/25 14:44, Richard Sandiford wrote:
>> External email: Use caution opening links or attachments
>> 
>> 
>> function_expander::get_reg_target didn't actually check for a register,
>> meaning that it could return a memory target instead.  That doesn't
>> really matter for the current direct and indirect uses (svundef*,
>> svcreate*, and svset*) but it will for later patches.
>> 
>> Tested on aarch64-linux-gnu.  OK to install?
> 
> Looks good to me,

Ok by me.
Thanks,
Kyrill


> 
> Remi
> 
>> 
>> Richard
>> 
>> 
>> gcc/
>>         * config/aarch64/aarch64-sve-builtins.cc
>>         (function_expander::get_reg_target): Check whether the target
>>         is a valid register_operand.
>> ---
>>  gcc/config/aarch64/aarch64-sve-builtins.cc | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>> 
>> diff --git a/gcc/config/aarch64/aarch64-sve-builtins.cc 
>> b/gcc/config/aarch64/aarch64-sve-builtins.cc
>> index 2b627a95060..01833a8de73 100644
>> --- a/gcc/config/aarch64/aarch64-sve-builtins.cc
>> +++ b/gcc/config/aarch64/aarch64-sve-builtins.cc
>> @@ -4004,7 +4004,8 @@ rtx
>>  function_expander::get_reg_target ()
>>  {
>>    machine_mode target_mode = result_mode ();
>> -  if (!possible_target || GET_MODE (possible_target) != target_mode)
>> +  if (!possible_target
>> +      || !register_operand (possible_target, target_mode))
>>      possible_target = gen_reg_rtx (target_mode);
>>    return possible_target;
>>  }
>> --
>> 2.43.0
>> 

Reply via email to