On 11/11/2024 16:12, Richard Sandiford wrote:
Claudio Bantaloukas <claudio.bantalou...@arm.com> writes:
diff --git a/gcc/config/aarch64/aarch64-sve-builtins-sve2.def 
b/gcc/config/aarch64/aarch64-sve-builtins-sve2.def
index e4021559f36..8d25bb33dad 100644
--- a/gcc/config/aarch64/aarch64-sve-builtins-sve2.def
+++ b/gcc/config/aarch64/aarch64-sve-builtins-sve2.def
@@ -227,61 +227,73 @@ DEF_SVE_FUNCTION (svrevd, unary, all_data, mxz)
  #undef REQUIRED_EXTENSIONS
#define REQUIRED_EXTENSIONS streaming_only (AARCH64_FL_SME2)
-DEF_SVE_FUNCTION_GS (svadd, binary_single, all_integer, x24, none)
+DEF_SVE_FUNCTION_GS (svadd, binary_single, all_integer, x24, none, unused)
I know this isn't going to be to everyone's test, but could we instead
keep the DEF_SVE_FUNCTION_GS interface the same and add a new macro:

DEF_SVE_FUNCTION_GS_FPM
Done

The default definition of DEF_SVE_FUNCTION_GS would then forward
to DEF_SVE_FUNCTION_GS_FPM, and the .cc file would define
DEF_SVE_FUNCTION_GS_FPM instead of DEF_SVE_FUNCTION_GS.  This is
similar to what happened when DEF_SVE_FUNCTION_GS itself was
introduced.

Same idea for SME.

[...]
@@ -878,10 +893,11 @@ function_instance (const char *base_name_in,
                   mode_suffix_index mode_suffix_id_in,
                   const type_suffix_pair &type_suffix_ids_in,
                   group_suffix_index group_suffix_id_in,
-                  predication_index pred_in)
+                  predication_index pred_in,
+                  fpm_mode_index fpm_mode_in)
    : base_name (base_name_in), base (base_in), shape (shape_in),
      mode_suffix_id (mode_suffix_id_in), group_suffix_id (group_suffix_id_in),
-    pred (pred_in)
+    pred (pred_in), fpm_mode(fpm_mode_in)
Formatting nit (sorry that it's not automated), but: space before "(".

Thanks for catching, formatted all changes with contrib/clang-format.

I can dream: can we apply that on all gcc/config/aarch64 c syntax files? :)


Looks good otherwise, thanks.

Richard

  {
    memcpy (type_suffix_ids, type_suffix_ids_in, sizeof (type_suffix_ids));
  }
@@ -895,7 +911,8 @@ function_instance::operator== (const function_instance 
&other) const
          && type_suffix_ids[0] == other.type_suffix_ids[0]
          && type_suffix_ids[1] == other.type_suffix_ids[1]
          && group_suffix_id == other.group_suffix_id
-         && pred == other.pred);
+         && pred == other.pred
+         && fpm_mode == other.fpm_mode);
  }
inline bool

Reply via email to