Hi Yangyu,

This looks great with what we discussed previously.

I have a very similar patch that implements a slightly stronger optimisation that I was about to send. It makes use of information if the caller is versioned. I will share this with you shortly and we can work out what we wish to use?

Kind regards,
Alfie

On 14/04/2025 10:00, Yangyu Chen wrote:
This patchset implements a new feature to redirect to a specific target
based on the TARGET_VERSION_COMPATIBLE macro. This allows for more
precise FMV callee selection and better performance for certain
architectures. Especially for those callee that needs to be inlined,
this patchset can help to avoid unnecessary function calls and improve
performance. The idea comes from the previous dicussion on the
gcc-patches mailing list [1].

Additionally, this patchset also includes a implementation of
TARGET_VERSION_COMPATIBLE for RISC-V, which allows for more
flexibility in selecting the target version for RISC-V architectures.

[1] https://patchwork.sourceware.org/comment/197172/

Yangyu Chen (3):
   Redirect to specific target based on TARGET_VERSION_COMPATIBLE
   RISC-V: Split parse_features_for_version with cl_target_option
     returned
   RISC-V: Implement TARGET_VERSION_COMPATIBLE

  gcc/config/riscv/riscv.cc | 84 ++++++++++++++++++++++++++++-----------
  gcc/doc/tm.texi           |  7 ++++
  gcc/doc/tm.texi.in        |  2 +
  gcc/multiple_target.cc    | 58 +++++++++++++++++----------
  gcc/target.def            | 12 ++++++
  5 files changed, 118 insertions(+), 45 deletions(-)


Reply via email to