Hello,

Thank you for the feedback! 

I discussed this patch offline with Richard E and in doing so realised I could
simplify this signifficanly checking the priority values mergeability in
diagnose_mismatched_decls instead of disjoint_version_decls. This makes more
sense for a lot of reasons.

Changes for V5:

- Addressed Wilco's feedback on priority version parsing.
- Addressed offline feedback from Richard E.
- Signifficantly cleaner patch.

Changes for V4:

- Addressed Wilco's feedback on logic in disjoint_version_decls.
- Pushed approved patches

Changes for V3:

- Addressed Wilco's feedback on logic in aarch64_parse_fmv_features.
- Fixed grammar in commit message.

Changes for V2:

- Added tests for priority version errors.
- Changed disjoint_version_decls to have an explicit new_decl and old_decl
- Change a call to disjoint_version_decls in c frontend where they were the
  wrong way around.
- Simplified and corrected some of my parsing logic as Wilco suggested.
- Changed how the aarch64 version order test works as discussed with Wilco.
- Adds patch to add FMV support macro

Regr tested on aarch64-linux-gnu and x86-linux-gnu.

Ok for master?

Thanks.
Alfie


Alfie Richards (2):
  targethooks: Change SAME_FUNCTION_VERSIONS hook to support checking
    mergeability
  aarch64: Add support for fmv priority syntax.

 gcc/config/aarch64/aarch64.cc                 | 149 ++++++++++++++----
 gcc/config/riscv/riscv.cc                     |   2 +-
 gcc/doc/tm.texi                               |   8 +-
 gcc/hooks.cc                                  |   2 +-
 gcc/target.def                                |  18 ++-
 .../gcc.target/aarch64/fmv_priority3.c        |  26 +++
 .../gcc.target/aarch64/fmv_priority_error1.c  |  11 ++
 .../gcc.target/aarch64/fmv_priority_error2.c  |   8 +
 gcc/tree.cc                                   |  34 ++--
 9 files changed, 207 insertions(+), 51 deletions(-)
 create mode 100644 gcc/testsuite/gcc.target/aarch64/fmv_priority3.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/fmv_priority_error1.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/fmv_priority_error2.c

-- 
2.34.1

Reply via email to