Skip to content

Commit f0996ae

Browse files
committed
SmallString, std::optional, enum : uint8_t
1 parent 2dd3ba2 commit f0996ae

File tree

4 files changed

+10
-11
lines changed

4 files changed

+10
-11
lines changed

llvm/include/llvm/CodeGen/MIRParser/MIParser.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class TargetRegisterClass;
3737
class TargetSubtargetInfo;
3838

3939
struct VRegInfo {
40-
enum uint8_t {
40+
enum : uint8_t {
4141
UNKNOWN, NORMAL, GENERIC, REGBANK
4242
} Kind = UNKNOWN;
4343
bool Explicit = false; ///< VReg was explicitly specified in the .mir file.
@@ -47,7 +47,7 @@ struct VRegInfo {
4747
} D;
4848
Register VReg;
4949
Register PreferredReg;
50-
std::vector<::uint8_t> Flags;
50+
std::vector<uint8_t> Flags;
5151
};
5252

5353
using Name2RegClassMap = StringMap<const TargetRegisterClass *>;

llvm/include/llvm/CodeGen/TargetRegisterInfo.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1214,11 +1214,11 @@ class TargetRegisterInfo : public MCRegisterInfo {
12141214
return false;
12151215
}
12161216

1217-
virtual std::pair<bool, uint8_t> getVRegFlagValue(StringRef Name) const {
1218-
return {false, 0};
1217+
virtual std::optional<uint8_t> getVRegFlagValue(StringRef Name) const {
1218+
return {};
12191219
}
12201220

1221-
virtual SmallVector<std::string>
1221+
virtual SmallVector<SmallString<8>>
12221222
getVRegFlagsOfReg(Register Reg, const MachineFunction &MF) const {
12231223
return {};
12241224
}

llvm/lib/CodeGen/MIRParser/MIParser.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,10 @@ bool PerTargetMIParsingState::getRegisterByName(StringRef RegName,
130130
bool PerTargetMIParsingState::getVRegFlagValue(StringRef FlagName,
131131
uint8_t &FlagValue) const {
132132
const auto *TRI = Subtarget.getRegisterInfo();
133-
assert(TRI && "Expected target register info");
134-
auto [HasVReg, FV] = TRI->getVRegFlagValue(FlagName);
135-
if (!HasVReg)
133+
auto FV = TRI->getVRegFlagValue(FlagName);
134+
if (!FV.has_value())
136135
return true;
137-
FlagValue = FV;
136+
FlagValue = FV.value();
138137
return false;
139138
}
140139

llvm/lib/CodeGen/MIRPrinter.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -320,9 +320,9 @@ static void printRegFlags(Register Reg,
320320
std::vector<yaml::FlowStringValue> &RegisterFlags,
321321
const MachineFunction &MF,
322322
const TargetRegisterInfo *TRI) {
323-
SmallVector<std::string> FlagValues = TRI->getVRegFlagsOfReg(Reg, MF);
323+
auto FlagValues = TRI->getVRegFlagsOfReg(Reg, MF);
324324
for (auto &Flag : FlagValues) {
325-
RegisterFlags.push_back(yaml::FlowStringValue(Flag));
325+
RegisterFlags.push_back(yaml::FlowStringValue(Flag.str().str()));
326326
}
327327
}
328328

0 commit comments

Comments
 (0)