https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114639

--- Comment #11 from Li Pan <pan2.li at intel dot com> ---
(In reply to Li Pan from comment #10)
> The #define FUNCTION_VALUE_REGNO_P(N) ((N) == GP_RETURN || (N) == FP_RETURN)
> of the riscv backend doesn't honor vector mode.  Then the below part
> 
>  370 ................    if (!targetm.calls.function_value_regno_p
> (copy_start))                                                               
> 
>  371 ................      copy_num = 0;                                    
> 
>  372 ................    else
>  373 ................      copy_num = hard_regno_nregs (copy_start,
>  374 ................................................   GET_MODE (copy_reg));
> 
> will have copy_num == 0 and then went to a different code path.
> 
> Let me run fully riscv regression test for this fix first.

Maybe misunderstand here, need to double-check the vector ABI for return
values.

Reply via email to