================
@@ -97,6 +97,12 @@
   SVE_TYPE(Name, Id, SingletonId)
 #endif
 
+#ifndef AARCH64_OPAQUE_TYPE
+#define AARCH64_OPAQUE_TYPE(Name, MangledName, Id, SingletonId, NumEls, \
+                            ElBits, NF) \
+  SVE_TYPE(Name, Id, SingletonId)
+#endif
+
----------------
paulwalker-arm wrote:

The `AARCH64_###_TYPE` macros are supposed to take just the four parameters 
`Name, MangledName, Id, SingletonId` because the intent is for them to be used 
in generic code where only those parameters are used.

Not doing this is why you've had to break several of the `SVE_TYPE` usages 
apart.  I think perhaps you want to define:
```
AARCH64_SCALAR_TYPE(Name, MangledName, Id, SingletonId)
```
and then if you need extra details specific to __mfp8 you'd define 
`AARCH64_SCALAR_TYPE_MFLOAT`.

Depending on the uses it might be the case that you need something below 
`SVE_TYPE` (e.g. `AARCH64_TYPE`) so there's a macro for all type, and then 
separate macros for vector and scalar types, each of which are further 
subdivided base on their need.

https://github.com/llvm/llvm-project/pull/97277
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to