[X86] RegCall - Handling v64i1 in 32/64 bit target
authorOren Ben Simhon <oren.ben.simhon@intel.com>
Thu, 17 Nov 2016 09:59:40 +0000 (09:59 +0000)
committerOren Ben Simhon <oren.ben.simhon@intel.com>
Thu, 17 Nov 2016 09:59:40 +0000 (09:59 +0000)
commit489d6eff4fecd00aa2a384dbe1991251b1175a01
tree1dfdcca75f40a02363028b5afe97567889e06a3b
parent9230db94b7b5c6b370fe7c297db79a3128fd4637
[X86] RegCall - Handling v64i1 in 32/64 bit target

Register Calling Convention defines a new behavior for v64i1 types.
This type should be saved in GPR.
However for 32 bit machine we need to split the value into 2 GPRs (because each is 32 bit).

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

llvm-svn: 287217
llvm/lib/Target/X86/CMakeLists.txt
llvm/lib/Target/X86/X86CallingConv.cpp [new file with mode: 0644]
llvm/lib/Target/X86/X86CallingConv.h
llvm/lib/Target/X86/X86CallingConv.td
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/avx512-regcall-Mask.ll [new file with mode: 0644]