================ @@ -64,26 +65,29 @@ class ImmCheck { }; class SVEType { - TypeSpec TS; bool Float, Signed, Immediate, Void, Constant, Pointer, BFloat; bool DefaultType, IsScalable, Predicate, PredicatePattern, PrefetchOp, Svcount; unsigned Bitwidth, ElementBitwidth, NumVectors; public: - SVEType() : SVEType(TypeSpec(), 'v') {} + SVEType() : SVEType("", 'v', 0) {} - SVEType(TypeSpec TS, char CharMod, unsigned NumVectors = 1) - : TS(TS), Float(false), Signed(true), Immediate(false), Void(false), + SVEType(StringRef TS, char CharMod = 'd', unsigned NumVectors = 0) ---------------- momchil-velikov wrote:
> I know that it only works with 'd'. But it should be able to be empty. I don't understand. Also there wasn't a default parameter value, therefore all users passed an explicit value and adding a default cannot affect them. > ?Why NumVectors=0? The idea is that you get the most basic possible instance of this type if you pass the least amount of information( i.e. `SVType(TS)`) and you get progressively more complex variants when you add information, like type modifier or vector length. That's why 'd' and `0` were chosen as defaults - they correspond to the most basic variant. > I believe it still works if we change to 1, so maybe we can reduce some of > the changes, for instance lane 918, 970 and 976 I don't agree with the criteria "minimising changes", but really it's not then important, so I'll make the changes as you request and move on. https://github.com/llvm/llvm-project/pull/69598 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits