[PATCH] D36652: [AVX512] Remove leftover code for when i1 was a legal type from the fast isel load/store code.
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Aug 13 12:20:37 PDT 2017
craig.topper created this revision.
I don't think we need this code anymore. It only existed because i1 used to be legal.
There's probably more unneeded code in fast isel still.
https://reviews.llvm.org/D36652
Files:
lib/Target/X86/X86FastISel.cpp
Index: lib/Target/X86/X86FastISel.cpp
===================================================================
--- lib/Target/X86/X86FastISel.cpp
+++ lib/Target/X86/X86FastISel.cpp
@@ -329,10 +329,6 @@
switch (VT.getSimpleVT().SimpleTy) {
default: return false;
case MVT::i1:
- // TODO: Support this properly.
- if (Subtarget->hasAVX512())
- return false;
- LLVM_FALLTHROUGH;
case MVT::i8:
Opc = X86::MOV8rm;
RC = &X86::GR8RegClass;
@@ -510,16 +506,6 @@
case MVT::f80: // No f80 support yet.
default: return false;
case MVT::i1: {
- // In case ValReg is a K register, COPY to a GPR
- if (MRI.getRegClass(ValReg) == &X86::VK1RegClass) {
- unsigned KValReg = ValReg;
- ValReg = createResultReg(&X86::GR32RegClass);
- BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DbgLoc,
- TII.get(TargetOpcode::COPY), ValReg)
- .addReg(KValReg);
- ValReg = fastEmitInst_extractsubreg(MVT::i8, ValReg, /*Kill=*/true,
- X86::sub_8bit);
- }
// Mask out all but lowest bit.
unsigned AndResult = createResultReg(&X86::GR8RegClass);
BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DbgLoc,
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D36652.110882.patch
Type: text/x-patch
Size: 1203 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170813/e0ca033d/attachment.bin>
More information about the llvm-commits
mailing list