On Fri, Feb 2, 2024 at 4:22 AM Jakub Jelinek wrote:
>
> On Thu, Feb 01, 2024 at 03:02:47PM -0800, H.J. Lu wrote:
> > @@ -2763,6 +2789,8 @@ construct_container (machine_mode mode, machine_mode
> > orig_mode,
> >{
> >case X86_64_INTEGER_CLASS:
> >case X86_64_INTEGERSI_CLASS:
On Thu, Feb 01, 2024 at 03:02:47PM -0800, H.J. Lu wrote:
> @@ -2763,6 +2789,8 @@ construct_container (machine_mode mode, machine_mode
> orig_mode,
>{
>case X86_64_INTEGER_CLASS:
>case X86_64_INTEGERSI_CLASS:
> + if (!in_return)
> + set_int_parameter_registers_bit
Changes in v2:
1. Add int_parameter_registers to machine_function to track integer
registers used for parameter passing.
2. Update x86_64_select_profile_regnum to try %r10 first and use an
caller-saved register, which isn't used for parameter passing.
---
2 scratch registers, %r10 and %r11, are a