diff options
Diffstat (limited to 'llvm/lib/CodeGen/GlobalISel/MachineLegalizer.cpp')
-rw-r--r-- | llvm/lib/CodeGen/GlobalISel/MachineLegalizer.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/CodeGen/GlobalISel/MachineLegalizer.cpp b/llvm/lib/CodeGen/GlobalISel/MachineLegalizer.cpp index edd5ccfd9cd..600f7bc5973 100644 --- a/llvm/lib/CodeGen/GlobalISel/MachineLegalizer.cpp +++ b/llvm/lib/CodeGen/GlobalISel/MachineLegalizer.cpp @@ -28,10 +28,6 @@ MachineLegalizer::MachineLegalizer() : TablesInitialized(false) { DefaultActions[TargetOpcode::G_ADD] = NarrowScalar; } -bool MachineLegalizer::legalizeInstr(MachineInstr &MI) const { - llvm_unreachable("Unimplemented functionality"); -} - void MachineLegalizer::computeTables() { for (auto &Op : Actions) { LLT Ty = Op.first.second; @@ -56,6 +52,11 @@ MachineLegalizer::getAction(unsigned Opcode, LLT Ty) const { // These *have* to be implemented for now, they're the fundamental basis of // how everything else is transformed. + // FIXME: the long-term plan calls for expansion in terms of load/store (if + // they're not legal). + if (Opcode == TargetOpcode::G_SEQUENCE || Opcode == TargetOpcode::G_EXTRACT) + return std::make_pair(Legal, Ty); + auto ActionIt = Actions.find(std::make_pair(Opcode, Ty)); if (ActionIt != Actions.end()) return findLegalAction(Opcode, Ty, ActionIt->second); |