@@ -55,26 +55,28 @@ bool RevFeature::ParseMachineModel() {
55
55
// /<
56
56
// /< ExtensionName DefaultMajor DefaultMinor MinSupportedVersion MaxSupportedVersion Flags
57
57
static constexpr std::tuple<std::string_view, uint32_t , uint32_t , uint32_t , uint32_t , uint32_t > table[] = {
58
- { " I" , 2 , 1 , 2 , 2 , RV_I },
59
- { " E" , 2 , 0 , -1 , 0 , RV_E }, // Unsupported
60
- { " M" , 2 , 0 , 2 , 2 , RV_M },
61
- { " A" , 2 , 1 , 2 , 2 , RV_A },
62
- { " F" , 2 , 2 , 2 , 2 , RV_F | RV_ZICSR },
63
- { " D" , 2 , 2 , 2 , 2 , RV_D | RV_F | RV_ZICSR },
64
- { " G" , 2 , 0 , 2 , 2 , RV_I | RV_M | RV_A | RV_F | RV_D | RV_ZICSR | RV_ZIFENCEI },
65
- { " Q" , 2 , 2 , -1 , 0 , RV_Q | RV_D | RV_F | RV_ZICSR }, // Unsupported
66
- { " C" , 2 , 0 , 2 , 2 , RV_C },
67
- { " B" , 1 , 0 , -1 , 0 , RV_B }, // Unsupported
68
- { " P" , 0 , 2 , -1 , 0 , RV_P }, // Unsupported
69
- { " V" , 1 , 0 , -1 , 0 , RV_V | RV_D | RV_F | RV_ZICSR },
70
- { " H" , 1 , 0 , -1 , 0 , RV_H }, // Unsupported
71
- { " Zicbom" , 1 , 0 , 1 , 1 , RV_ZICBOM },
72
- { " Zicsr" , 2 , 0 , 2 , 2 , RV_ZICSR },
73
- { " Zifencei" , 2 , 0 , 2 , 2 , RV_ZIFENCEI },
74
- { " Zfa" , 1 , 0 , 1 , 1 , RV_ZFA | RV_F | RV_ZICSR }, // Unsupported
75
- { " Zfh" , 1 , 0 , -1 , 0 , RV_ZFH | RV_ZFHMIN | RV_F | RV_ZICSR }, // Unsupported
76
- { " Zfhmin" , 1 , 0 , -1 , 0 , RV_ZFHMIN | RV_F | RV_ZICSR }, // Unsupported
77
- { " Ztso" , 1 , 0 , -1 , 0 , RV_ZTSO }, // Unsupported
58
+ { " I" , 2 , 1 , 2 , 2 , RV_I },
59
+ { " E" , 2 , 0 , -1 , 0 , RV_E }, // Unsupported
60
+ { " M" , 2 , 0 , 2 , 2 , RV_M | RV_ZMMUL },
61
+ { " A" , 2 , 1 , 2 , 2 , RV_A },
62
+ { " F" , 2 , 2 , 2 , 2 , RV_F | RV_ZICSR },
63
+ { " D" , 2 , 2 , 2 , 2 , RV_D | RV_F | RV_ZICSR },
64
+ { " G" , 2 , 0 , 2 , 2 , RV_I | RV_M | RV_ZMMUL | RV_A |
65
+ RV_F | RV_D | RV_ZICSR | RV_ZIFENCEI },
66
+ { " Q" , 2 , 2 , -1 , 0 , RV_Q | RV_D | RV_F | RV_ZICSR }, // Unsupported
67
+ { " C" , 2 , 0 , 2 , 2 , RV_C },
68
+ { " B" , 1 , 0 , -1 , 0 , RV_B }, // Unsupported
69
+ { " P" , 0 , 2 , -1 , 0 , RV_P }, // Unsupported
70
+ { " V" , 1 , 0 , -1 , 0 , RV_V | RV_D | RV_F | RV_ZICSR },
71
+ { " H" , 1 , 0 , -1 , 0 , RV_H }, // Unsupported
72
+ { " Zicbom" , 1 , 0 , 1 , 1 , RV_ZICBOM },
73
+ { " Zicsr" , 2 , 0 , 2 , 2 , RV_ZICSR },
74
+ { " Zifencei" , 2 , 0 , 2 , 2 , RV_ZIFENCEI },
75
+ { " Zmmul" , 1 , 0 , 1 , 1 , RV_ZMMUL },
76
+ { " Zfa" , 1 , 0 , 1 , 1 , RV_ZFA | RV_F | RV_ZICSR }, // Unsupported
77
+ { " Zfh" , 1 , 0 , -1 , 0 , RV_ZFH | RV_ZFHMIN | RV_F | RV_ZICSR }, // Unsupported
78
+ { " Zfhmin" , 1 , 0 , -1 , 0 , RV_ZFHMIN | RV_F | RV_ZICSR }, // Unsupported
79
+ { " Ztso" , 1 , 0 , -1 , 0 , RV_ZTSO }, // Unsupported
78
80
};
79
81
// clang-format on
80
82
0 commit comments