@@ -966,40 +966,26 @@ llvm::SmallVector<PrototypeDescriptor> RVVIntrinsic::computeBuiltinTypes(
966
966
return NewPrototype;
967
967
}
968
968
969
- llvm::SmallVector<Policy>
970
- RVVIntrinsic::getSupportedUnMaskedPolicies (bool HasTailPolicy,
971
- bool HasMaskPolicy) {
972
- return {
973
- Policy (Policy::PolicyType::Undisturbed, HasTailPolicy,
974
- HasMaskPolicy), // TU
975
- Policy (Policy::PolicyType::Agnostic, HasTailPolicy, HasMaskPolicy)}; // TA
969
+ llvm::SmallVector<Policy> RVVIntrinsic::getSupportedUnMaskedPolicies () {
970
+ return {Policy (Policy::PolicyType::Undisturbed)}; // TU
976
971
}
977
972
978
973
llvm::SmallVector<Policy>
979
974
RVVIntrinsic::getSupportedMaskedPolicies (bool HasTailPolicy,
980
975
bool HasMaskPolicy) {
981
976
if (HasTailPolicy && HasMaskPolicy)
982
- return {
983
- Policy (Policy::PolicyType::Undisturbed, Policy::PolicyType::Agnostic,
984
- HasTailPolicy, HasMaskPolicy), // TUMA
985
- Policy (Policy::PolicyType::Agnostic, Policy::PolicyType::Agnostic,
986
- HasTailPolicy, HasMaskPolicy), // TAMA
987
- Policy (Policy::PolicyType::Undisturbed, Policy::PolicyType::Undisturbed,
988
- HasTailPolicy, HasMaskPolicy), // TUMU
989
- Policy (Policy::PolicyType::Agnostic, Policy::PolicyType::Undisturbed,
990
- HasTailPolicy, HasMaskPolicy)}; // TAMU
977
+ return {Policy (Policy::PolicyType::Undisturbed,
978
+ Policy::PolicyType::Agnostic), // TUM
979
+ Policy (Policy::PolicyType::Undisturbed,
980
+ Policy::PolicyType::Undisturbed), // TUMU
981
+ Policy (Policy::PolicyType::Agnostic,
982
+ Policy::PolicyType::Undisturbed)}; // MU
991
983
if (HasTailPolicy && !HasMaskPolicy)
992
984
return {Policy (Policy::PolicyType::Undisturbed,
993
- Policy::PolicyType::Agnostic, HasTailPolicy,
994
- HasMaskPolicy), // TUM
995
- Policy (Policy::PolicyType::Agnostic, Policy::PolicyType::Agnostic,
996
- HasTailPolicy, HasMaskPolicy)}; // TAM
985
+ Policy::PolicyType::Agnostic)}; // TU
997
986
if (!HasTailPolicy && HasMaskPolicy)
998
- return {Policy (Policy::PolicyType::Agnostic, Policy::PolicyType::Agnostic,
999
- HasTailPolicy, HasMaskPolicy), // MA
1000
- Policy (Policy::PolicyType::Agnostic,
1001
- Policy::PolicyType::Undisturbed, HasTailPolicy,
1002
- HasMaskPolicy)}; // MU
987
+ return {Policy (Policy::PolicyType::Agnostic,
988
+ Policy::PolicyType::Undisturbed)}; // MU
1003
989
llvm_unreachable (" An RVV instruction should not be without both tail policy "
1004
990
" and mask policy" );
1005
991
}
@@ -1016,46 +1002,29 @@ void RVVIntrinsic::updateNamesAndPolicy(bool IsMasked, bool HasPolicy,
1016
1002
OverloadedName += suffix;
1017
1003
};
1018
1004
1019
- if (PolicyAttrs.isUnspecified ()) {
1020
- PolicyAttrs.IsUnspecified = false ;
1021
- if (IsMasked) {
1005
+ if (IsMasked) {
1006
+ if (PolicyAttrs.isTUMUPolicy ())
1007
+ appendPolicySuffix (" _tumu" );
1008
+ else if (PolicyAttrs.isTUMAPolicy ())
1009
+ appendPolicySuffix (" _tum" );
1010
+ else if (PolicyAttrs.isTAMUPolicy ())
1011
+ appendPolicySuffix (" _mu" );
1012
+ else if (PolicyAttrs.isTAMAPolicy ()) {
1022
1013
Name += " _m" ;
1023
1014
if (HasPolicy)
1024
1015
BuiltinName += " _tama" ;
1025
1016
else
1026
1017
BuiltinName += " _m" ;
1027
- } else {
1018
+ } else
1019
+ llvm_unreachable (" Unhandled policy condition" );
1020
+ } else {
1021
+ if (PolicyAttrs.isTUPolicy ())
1022
+ appendPolicySuffix (" _tu" );
1023
+ else if (PolicyAttrs.isTAPolicy ()) {
1028
1024
if (HasPolicy)
1029
1025
BuiltinName += " _ta" ;
1030
- }
1031
- } else {
1032
- if (IsMasked) {
1033
- if (PolicyAttrs.isTUMAPolicy () && !PolicyAttrs.hasMaskPolicy ())
1034
- appendPolicySuffix (" _tum" );
1035
- else if (PolicyAttrs.isTAMAPolicy () && !PolicyAttrs.hasMaskPolicy ())
1036
- appendPolicySuffix (" _tam" );
1037
- else if (PolicyAttrs.isMUPolicy () && !PolicyAttrs.hasTailPolicy ())
1038
- appendPolicySuffix (" _mu" );
1039
- else if (PolicyAttrs.isMAPolicy () && !PolicyAttrs.hasTailPolicy ())
1040
- appendPolicySuffix (" _ma" );
1041
- else if (PolicyAttrs.isTUMUPolicy ())
1042
- appendPolicySuffix (" _tumu" );
1043
- else if (PolicyAttrs.isTAMUPolicy ())
1044
- appendPolicySuffix (" _tamu" );
1045
- else if (PolicyAttrs.isTUMAPolicy ())
1046
- appendPolicySuffix (" _tuma" );
1047
- else if (PolicyAttrs.isTAMAPolicy ())
1048
- appendPolicySuffix (" _tama" );
1049
- else
1050
- llvm_unreachable (" Unhandled policy condition" );
1051
- } else {
1052
- if (PolicyAttrs.isTUPolicy ())
1053
- appendPolicySuffix (" _tu" );
1054
- else if (PolicyAttrs.isTAPolicy ())
1055
- appendPolicySuffix (" _ta" );
1056
- else
1057
- llvm_unreachable (" Unhandled policy condition" );
1058
- }
1026
+ } else
1027
+ llvm_unreachable (" Unhandled policy condition" );
1059
1028
}
1060
1029
}
1061
1030
0 commit comments