[GlobalISel][X86] extend G_ZEXT support.
authorIgor Breger <igor.breger@intel.com>
Mon, 10 Jul 2017 09:07:34 +0000 (09:07 +0000)
committerIgor Breger <igor.breger@intel.com>
Mon, 10 Jul 2017 09:07:34 +0000 (09:07 +0000)
commitd48c5e485591d6cfcec979e80700967eb96c9979
tree73cf9ee9a32b7822f1fa88a0d0d5c986f5edf19d
parente436483855b99d3a4577fbfb60c38f29d0574ca6
[GlobalISel][X86] extend G_ZEXT support.

Summary:
Mark G_ZEXT/G_SEXT i1 to i8/i16,  i8 to i16 as legal.
Support G_ZEXT i1 to i8/i16 instruction selection ( C++ code).
This patch requred to support G_LOAD/G_STORE i1.

Reviewers: zvi, guyblank

Reviewed By: guyblank

Subscribers: rovka, llvm-commits, kristof.beyls

Differential Revision: https://reviews.llvm.org/D35177

llvm-svn: 307526
llvm/lib/Target/X86/X86InstructionSelector.cpp
llvm/lib/Target/X86/X86LegalizerInfo.cpp
llvm/test/CodeGen/X86/GlobalISel/ext.ll
llvm/test/CodeGen/X86/GlobalISel/legalize-ext.mir
llvm/test/CodeGen/X86/GlobalISel/select-ext.mir