Re: [PATCH v2] x86-64: Find a scratch register for large model profiling

2024-02-02 Thread H.J. Lu
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:

Re: [PATCH v2] x86-64: Find a scratch register for large model profiling

2024-02-02 Thread Jakub Jelinek
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

[PATCH v2] x86-64: Find a scratch register for large model profiling

2024-02-01 Thread H.J. Lu
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