[llvm] r348472 - [ARM GlobalISel] Nothing is legal for Thumb
Diana Picus via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 6 01:26:14 PST 2018
Author: rovka
Date: Thu Dec 6 01:26:14 2018
New Revision: 348472
URL: http://llvm.org/viewvc/llvm-project?rev=348472&view=rev
Log:
[ARM GlobalISel] Nothing is legal for Thumb
...yet!
A lot of the current code should be shared for arm and thumb mode, but
until we add tests and work out some of the details (e.g. checking the
correct subtarget feature for G_SDIV) it's safer to bail out as early as
possible for thumb targets.
This should have arguably been part of r348347, which allowed Thumb
functions to be handled by the IR Translator.
Modified:
llvm/trunk/lib/Target/ARM/ARMLegalizerInfo.cpp
Modified: llvm/trunk/lib/Target/ARM/ARMLegalizerInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMLegalizerInfo.cpp?rev=348472&r1=348471&r2=348472&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMLegalizerInfo.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMLegalizerInfo.cpp Thu Dec 6 01:26:14 2018
@@ -75,6 +75,13 @@ ARMLegalizerInfo::ARMLegalizerInfo(const
const LLT s32 = LLT::scalar(32);
const LLT s64 = LLT::scalar(64);
+ if (ST.isThumb()) {
+ // FIXME: merge with the code for non-Thumb.
+ computeTables();
+ verify(*ST.getInstrInfo());
+ return;
+ }
+
getActionDefinitionsBuilder(G_GLOBAL_VALUE).legalFor({p0});
getActionDefinitionsBuilder(G_FRAME_INDEX).legalFor({p0});
More information about the llvm-commits
mailing list