[clang] [llvm] [RISCV][MC] Add experimental `Zvvmm` MC support (PR #193956)

via cfe-commits cfe-commits at lists.llvm.org
Fri Apr 24 22:50:40 PDT 2026


================
@@ -39,6 +39,57 @@ TEST(RISCVVType, CheckSameRatioLMUL) {
                 RISCVVType::getSEWLMULRatio(8, RISCVVType::LMUL_F4), 16));
 }
 
+TEST(RISCVVType, IMEVTypeFields) {
+  EXPECT_TRUE(RISCVVType::isValidIMELambda(0));
+  EXPECT_TRUE(RISCVVType::isValidIMELambda(1));
+  EXPECT_TRUE(RISCVVType::isValidIMELambda(64));
+  EXPECT_FALSE(RISCVVType::isValidIMELambda(3));
+  EXPECT_FALSE(RISCVVType::isValidIMELambda(128));
+
+  EXPECT_EQ(0U, RISCVVType::encodeIMELambda(0));
+  EXPECT_EQ(1U, RISCVVType::encodeIMELambda(1));
+  EXPECT_EQ(3U, RISCVVType::encodeIMELambda(4));
+  EXPECT_EQ(7U, RISCVVType::encodeIMELambda(64));
+  EXPECT_EQ(std::nullopt, RISCVVType::decodeIMELambda(0));
+  EXPECT_EQ(std::optional<unsigned>(1), RISCVVType::decodeIMELambda(1));
+  EXPECT_EQ(std::optional<unsigned>(4), RISCVVType::decodeIMELambda(3));
+  EXPECT_EQ(std::optional<unsigned>(64), RISCVVType::decodeIMELambda(7));
----------------
imkiva wrote:

Good idea. Fixed~

https://github.com/llvm/llvm-project/pull/193956


More information about the cfe-commits mailing list