@@ -506,9 +506,10 @@ class ARMAsmParser : public MCTargetAsmParser {
506
506
507
507
bool isMnemonicVPTPredicable(StringRef Mnemonic, StringRef ExtraToken);
508
508
StringRef splitMnemonic(StringRef Mnemonic, StringRef ExtraToken,
509
- unsigned &PredicationCode,
510
- unsigned &VPTPredicationCode, bool &CarrySetting,
511
- unsigned &ProcessorIMod, StringRef &ITMask);
509
+ ARMCC::CondCodes &PredicationCode,
510
+ ARMVCC::VPTCodes &VPTPredicationCode,
511
+ bool &CarrySetting, unsigned &ProcessorIMod,
512
+ StringRef &ITMask);
512
513
void getMnemonicAcceptInfo(StringRef Mnemonic, StringRef ExtraToken,
513
514
StringRef FullInst, bool &CanAcceptCarrySet,
514
515
bool &CanAcceptPredicationCode,
@@ -6283,10 +6284,9 @@ bool ARMAsmParser::parsePrefix(ARMMCExpr::VariantKind &RefKind) {
6283
6284
//
6284
6285
// FIXME: Would be nice to autogen this.
6285
6286
// FIXME: This is a bit of a maze of special cases.
6286
- StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic,
6287
- StringRef ExtraToken,
6288
- unsigned &PredicationCode,
6289
- unsigned &VPTPredicationCode,
6287
+ StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic, StringRef ExtraToken,
6288
+ ARMCC::CondCodes &PredicationCode,
6289
+ ARMVCC::VPTCodes &VPTPredicationCode,
6290
6290
bool &CarrySetting,
6291
6291
unsigned &ProcessorIMod,
6292
6292
StringRef &ITMask) {
@@ -6340,7 +6340,7 @@ StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic,
6340
6340
unsigned CC = ARMCondCodeFromString(Mnemonic.substr(Mnemonic.size()-2));
6341
6341
if (CC != ~0U) {
6342
6342
Mnemonic = Mnemonic.slice(0, Mnemonic.size() - 2);
6343
- PredicationCode = CC ;
6343
+ PredicationCode = static_cast<ARMCC::CondCodes>(CC) ;
6344
6344
}
6345
6345
}
6346
6346
@@ -6384,10 +6384,11 @@ StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic,
6384
6384
Mnemonic != "vqmovnt" && Mnemonic != "vqmovunt" &&
6385
6385
Mnemonic != "vqmovnt" && Mnemonic != "vmovnt" && Mnemonic != "vqdmullt" &&
6386
6386
Mnemonic != "vpnot" && Mnemonic != "vcvtt" && Mnemonic != "vcvt") {
6387
- unsigned CC = ARMVectorCondCodeFromString(Mnemonic.substr(Mnemonic.size()-1));
6388
- if (CC != ~0U) {
6387
+ unsigned VCC =
6388
+ ARMVectorCondCodeFromString(Mnemonic.substr(Mnemonic.size() - 1));
6389
+ if (VCC != ~0U) {
6389
6390
Mnemonic = Mnemonic.slice(0, Mnemonic.size()-1);
6390
- VPTPredicationCode = CC ;
6391
+ VPTPredicationCode = static_cast<ARMVCC::VPTCodes>(VCC) ;
6391
6392
}
6392
6393
return Mnemonic;
6393
6394
}
@@ -6966,8 +6967,8 @@ bool ARMAsmParser::ParseInstruction(ParseInstructionInfo &Info, StringRef Name,
6966
6967
StringRef ExtraToken = Name.slice(Next, Name.find(' ', Next + 1));
6967
6968
6968
6969
// Split out the predication code and carry setting flag from the mnemonic.
6969
- unsigned PredicationCode;
6970
- unsigned VPTPredicationCode;
6970
+ ARMCC::CondCodes PredicationCode;
6971
+ ARMVCC::VPTCodes VPTPredicationCode;
6971
6972
unsigned ProcessorIMod;
6972
6973
bool CarrySetting;
6973
6974
StringRef ITMask;
0 commit comments