[PATCH] D30968: [AVX-512] Fix accidental uses of AH/BH/CH/DH after copies to/from mask registers
Zvi Rackover via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Mar 26 04:40:19 PDT 2017
zvi added inline comments.
================
Comment at: lib/Target/X86/X86FastISel.cpp:547
unsigned KValReg = ValReg;
- ValReg = createResultReg(Subtarget->is64Bit() ? &X86::GR8RegClass
- : &X86::GR8_ABCD_LRegClass);
+ ValReg = createResultReg(&X86::GR32RegClass);
BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DbgLoc,
----------------
craig.topper wrote:
> zvi wrote:
> > Consider refactoring this recurring patterns in a follow-up patch.
> Once Guy makes i1 illegal this probably goes away?
True
================
Comment at: test/CodeGen/X86/avx512-intrinsics.ll:92
; CHECK-NEXT: kmovw %k0, %eax
+; CHECK-NEXT: ## kill: %AX<def> %AX<kill> %EAX<kill>
; CHECK-NEXT: retq
----------------
craig.topper wrote:
> zvi wrote:
> > Can these unrelated changed be committed separately?
> This patch made this appear. Its not there without this patch because we were much more silently converting ax to eax before. Now because we use INSERT_SUBREG this shows up.
Ok, thanks.
https://reviews.llvm.org/D30968
More information about the llvm-commits
mailing list