================ @@ -115,10 +115,19 @@ class LLVM_LIBRARY_VISIBILITY SystemZTargetInfo : public TargetInfo { return RegName == "r15"; } + // CC has interval [0, 4). + unsigned getFlagOutputCCUpperBound() const override { return 4; } bool validateAsmConstraint(const char *&Name, TargetInfo::ConstraintInfo &info) const override; std::string convertConstraint(const char *&Constraint) const override { + if (llvm::StringRef(Constraint).starts_with("@cc")) { + auto Len = llvm::StringRef("@cc").size(); + std::string Converted = + std::string("{") + std::string(Constraint, Len) + std::string("}"); + Constraint += Len - 1; ---------------- uweigand wrote:
And then all of these are just constants. https://github.com/llvm/llvm-project/pull/125970 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits