5757// - IsBF true for vector of brain float elements.
5858// ===----------------------------------------------------------------------===//
5959
60+ #ifndef SVE_SCALAR_TYPE
61+ #define SVE_SCALAR_TYPE (Name, MangledName, Id, SingletonId, Bits ) \
62+ SVE_TYPE (Name, Id, SingletonId)
63+ #endif
64+
6065#ifndef SVE_VECTOR_TYPE
6166#define SVE_VECTOR_TYPE (Name, MangledName, Id, SingletonId ) \
6267 SVE_TYPE (Name, Id, SingletonId)
7277 SVE_VECTOR_TYPE_DETAILS (Name, MangledName, Id, SingletonId, NumEls, ElBits, NF, false , false , true )
7378#endif
7479
80+ #ifndef SVE_VECTOR_TYPE_MFLOAT
81+ #define SVE_VECTOR_TYPE_MFLOAT (Name, MangledName, Id, SingletonId, NumEls, ElBits, NF ) \
82+ SVE_VECTOR_TYPE_DETAILS (Name, MangledName, Id, SingletonId, NumEls, ElBits, NF, false , false , false )
83+ #endif
84+
7585#ifndef SVE_VECTOR_TYPE_FLOAT
7686#define SVE_VECTOR_TYPE_FLOAT (Name, MangledName, Id, SingletonId, NumEls, ElBits, NF ) \
7787 SVE_VECTOR_TYPE_DETAILS (Name, MangledName, Id, SingletonId, NumEls, ElBits, NF, false , true , false )
@@ -125,8 +135,7 @@ SVE_VECTOR_TYPE_FLOAT("__SVFloat64_t", "__SVFloat64_t", SveFloat64, SveFloat64Ty
125135
126136SVE_VECTOR_TYPE_BFLOAT(" __SVBfloat16_t" , " __SVBfloat16_t" , SveBFloat16, SveBFloat16Ty, 8 , 16 , 1 )
127137
128- // This is a 8 bits opaque type.
129- SVE_VECTOR_TYPE_INT(" __SVMfloat8_t" , " __SVMfloat8_t" , SveMFloat8, SveMFloat8Ty, 16 , 8 , 1 , false )
138+ SVE_VECTOR_TYPE_MFLOAT(" __SVMfloat8_t" , " __SVMfloat8_t" , SveMFloat8, SveMFloat8Ty, 16 , 8 , 1 )
130139
131140//
132141// x2
@@ -148,7 +157,7 @@ SVE_VECTOR_TYPE_FLOAT("__clang_svfloat64x2_t", "svfloat64x2_t", SveFloat64x2, Sv
148157
149158SVE_VECTOR_TYPE_BFLOAT(" __clang_svbfloat16x2_t" , " svbfloat16x2_t" , SveBFloat16x2, SveBFloat16x2Ty, 8 , 16 , 2 )
150159
151- SVE_VECTOR_TYPE_INT (" __clang_svmfloat8x2_t" , " svmfloat8x2_t" , SveMFloat8x2, SveMFloat8x2Ty, 16 , 8 , 2 , false )
160+ SVE_VECTOR_TYPE_MFLOAT (" __clang_svmfloat8x2_t" , " svmfloat8x2_t" , SveMFloat8x2, SveMFloat8x2Ty, 16 , 8 , 2 )
152161
153162//
154163// x3
@@ -170,7 +179,7 @@ SVE_VECTOR_TYPE_FLOAT("__clang_svfloat64x3_t", "svfloat64x3_t", SveFloat64x3, Sv
170179
171180SVE_VECTOR_TYPE_BFLOAT(" __clang_svbfloat16x3_t" , " svbfloat16x3_t" , SveBFloat16x3, SveBFloat16x3Ty, 8 , 16 , 3 )
172181
173- SVE_VECTOR_TYPE_INT (" __clang_svmfloat8x3_t" , " svmfloat8x3_t" , SveMFloat8x3, SveMFloat8x3Ty, 16 , 8 , 3 , false )
182+ SVE_VECTOR_TYPE_MFLOAT (" __clang_svmfloat8x3_t" , " svmfloat8x3_t" , SveMFloat8x3, SveMFloat8x3Ty, 16 , 8 , 3 )
174183
175184//
176185// x4
@@ -192,19 +201,21 @@ SVE_VECTOR_TYPE_FLOAT("__clang_svfloat64x4_t", "svfloat64x4_t", SveFloat64x4, Sv
192201
193202SVE_VECTOR_TYPE_BFLOAT(" __clang_svbfloat16x4_t" , " svbfloat16x4_t" , SveBFloat16x4, SveBFloat16x4Ty, 8 , 16 , 4 )
194203
195- SVE_VECTOR_TYPE_INT (" __clang_svmfloat8x4_t" , " svmfloat8x4_t" , SveMFloat8x4, SveMFloat8x4Ty, 16 , 8 , 4 , false )
204+ SVE_VECTOR_TYPE_MFLOAT (" __clang_svmfloat8x4_t" , " svmfloat8x4_t" , SveMFloat8x4, SveMFloat8x4Ty, 16 , 8 , 4 )
196205
197206SVE_PREDICATE_TYPE_ALL(" __SVBool_t" , " __SVBool_t" , SveBool, SveBoolTy, 16 , 1 )
198207SVE_PREDICATE_TYPE_ALL(" __clang_svboolx2_t" , " svboolx2_t" , SveBoolx2, SveBoolx2Ty, 16 , 2 )
199208SVE_PREDICATE_TYPE_ALL(" __clang_svboolx4_t" , " svboolx4_t" , SveBoolx4, SveBoolx4Ty, 16 , 4 )
200209
201210SVE_OPAQUE_TYPE(" __SVCount_t" , " __SVCount_t" , SveCount, SveCountTy)
202211
203- AARCH64_VECTOR_TYPE_MFLOAT(" __mfp8" , " __mfp8" , MFloat8, MFloat8Ty, 1 , 8 , 1 )
212+ SVE_SCALAR_TYPE(" __mfp8" , " __mfp8" , MFloat8, MFloat8Ty, 8 )
213+
204214AARCH64_VECTOR_TYPE_MFLOAT(" __MFloat8x8_t" , " __MFloat8x8_t" , MFloat8x8, MFloat8x8Ty, 8 , 8 , 1 )
205215AARCH64_VECTOR_TYPE_MFLOAT(" __MFloat8x16_t" , " __MFloat8x16_t" , MFloat8x16, MFloat8x16Ty, 16 , 8 , 1 )
206216
207217#undef SVE_VECTOR_TYPE
218+ #undef SVE_VECTOR_TYPE_MFLOAT
208219#undef SVE_VECTOR_TYPE_BFLOAT
209220#undef SVE_VECTOR_TYPE_FLOAT
210221#undef SVE_VECTOR_TYPE_INT
@@ -213,4 +224,5 @@ AARCH64_VECTOR_TYPE_MFLOAT("__MFloat8x16_t", "__MFloat8x16_t", MFloat8x16, MFloa
213224#undef SVE_OPAQUE_TYPE
214225#undef AARCH64_VECTOR_TYPE_MFLOAT
215226#undef AARCH64_VECTOR_TYPE
227+ #undef SVE_SCALAR_TYPE
216228#undef SVE_TYPE
0 commit comments