This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG719a728b86a1: [15/15][Clang][RISCV][NFC] Set data member under Policy as constants (authored by eopXD).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141796/new/ https://reviews.llvm.org/D141796 Files: clang/include/clang/Support/RISCVVIntrinsicUtils.h Index: clang/include/clang/Support/RISCVVIntrinsicUtils.h =================================================================== --- clang/include/clang/Support/RISCVVIntrinsicUtils.h +++ clang/include/clang/Support/RISCVVIntrinsicUtils.h @@ -92,15 +92,22 @@ LLVM_MARK_AS_BITMASK_ENUM(LMUL1), }; -struct Policy { - bool IsUnspecified = false; +class Policy { +public: enum PolicyType { Undisturbed, Agnostic, }; - PolicyType TailPolicy = Agnostic; - PolicyType MaskPolicy = Agnostic; + bool IsUnspecified = false; + +private: + // The default assumption for an RVV instruction is TAMA, as an undisturbed + // policy generally will affect the performance of an out-of-order core. + const PolicyType TailPolicy = Agnostic; + const PolicyType MaskPolicy = Agnostic; bool HasTailPolicy, HasMaskPolicy; + +public: Policy(bool HasTailPolicy, bool HasMaskPolicy) : IsUnspecified(true), HasTailPolicy(HasTailPolicy), HasMaskPolicy(HasMaskPolicy) {}
Index: clang/include/clang/Support/RISCVVIntrinsicUtils.h =================================================================== --- clang/include/clang/Support/RISCVVIntrinsicUtils.h +++ clang/include/clang/Support/RISCVVIntrinsicUtils.h @@ -92,15 +92,22 @@ LLVM_MARK_AS_BITMASK_ENUM(LMUL1), }; -struct Policy { - bool IsUnspecified = false; +class Policy { +public: enum PolicyType { Undisturbed, Agnostic, }; - PolicyType TailPolicy = Agnostic; - PolicyType MaskPolicy = Agnostic; + bool IsUnspecified = false; + +private: + // The default assumption for an RVV instruction is TAMA, as an undisturbed + // policy generally will affect the performance of an out-of-order core. + const PolicyType TailPolicy = Agnostic; + const PolicyType MaskPolicy = Agnostic; bool HasTailPolicy, HasMaskPolicy; + +public: Policy(bool HasTailPolicy, bool HasMaskPolicy) : IsUnspecified(true), HasTailPolicy(HasTailPolicy), HasMaskPolicy(HasMaskPolicy) {}
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits