This is an archive of the discontinued LLVM Phabricator instance.

[X86][FastISel] Fix lowering of overflow result on AVX512 targets
ClosedPublic

Authored by zvi on Nov 14 2016, 10:41 AM.

Details

Summary

Fix a case where the overflow value of type i1, which is legal on AVX512, was assigned to a VK1 register class.
We always want this value to be assigned to a GPR since the overflow return value is lowered to a SETO instruction.

Fixes pr30981.

Diff Detail

Repository
rL LLVM

Event Timeline

zvi updated this revision to Diff 77833.Nov 14 2016, 10:41 AM
zvi retitled this revision from to [X86][FastISel] Fix lowering of overflow result on AVX512 targets.
zvi updated this object.
zvi added reviewers: mkuper, igorb, craig.topper, guyblank.
zvi set the repository for this revision to rL LLVM.
zvi added a subscriber: llvm-commits.
qcolombet accepted this revision.Nov 14 2016, 5:02 PM
qcolombet added a reviewer: qcolombet.
qcolombet added a subscriber: qcolombet.

LGTM

lib/Target/X86/X86FastISel.cpp
2774

This could be in a separate NFC patch.

2884

Add a comment on why GR8 is the right class at this point.

This revision is now accepted and ready to land.Nov 14 2016, 5:02 PM
zvi added inline comments.Nov 15 2016, 3:25 AM
lib/Target/X86/X86FastISel.cpp
2774

Sure

2884

Ok

zvi closed this revision.Nov 21 2016, 11:27 AM

r286958