[PATCH] D24824: [mips][FastISel] Instantiate the MipsFastISel class only for targets that support FastISel.
Simon Dardis via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 27 15:16:09 PDT 2016
sdardis requested changes to this revision.
sdardis added a comment.
This revision now requires changes to proceed.
Comments inlined.
================
Comment at: lib/Target/Mips/MipsISelLowering.cpp:464-465
@@ +463,4 @@
+
+ // FastISel is supported only for [MIPS32,MIPS32R6) ISAs.
+ bool UseFastISel = TM.Options.EnableFastISel && Subtarget.hasMips32();
+
----------------
I find this comment strange given the block beneath. I think this should be:
// FastISel is supported only for [MIPS32,MIPS32R5] ISAs.
bool UseFastISel = TM.Options.EnableFastISel && Subtarget.hasMips32() && !Subtarget.hasMips32r6());
================
Comment at: lib/Target/Mips/MipsISelLowering.cpp:467-469
@@ +466,5 @@
+
+ // Disable FastISel if we use MIPS32R6 or any microMIPS mode.
+ if (Subtarget.hasMips32r6() || Subtarget.inMicroMipsMode())
+ UseFastISel = false;
+
----------------
With my comment above, I think this should check for inMicroMips(), with the comment reflecting that we don't support compressed instruction sets.
Aside, I've barely looked but is mips16e rejected at a higher level for FastISel?
https://reviews.llvm.org/D24824
More information about the llvm-commits
mailing list