[VE] Support (m)0 and (m)1 operands
authorKazushi (Jam) Marukawa <marukawa@nec.com>
Thu, 9 Apr 2020 16:08:04 +0000 (18:08 +0200)
committerSimon Moll <simon.moll@emea.nec.com>
Thu, 9 Apr 2020 16:09:00 +0000 (18:09 +0200)
commit015dee1ac8988ed5184ef649c72ea0692f2633b3
treee38b2bbb910e306a1bb1899bef0f000f905f375b
parent5a55363dc46e400a109139afc4a7186b06b233cb
[VE] Support (m)0 and (m)1 operands

Summary:
VE has special operands to represent 0b000...000111...111 (`(m)0`) and
0b111...111000...000 (`(m)1`) bit sequences.  This patch supports those
operands not only in machine instructions but also in DAG lowering.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D77769
llvm/lib/Target/VE/MCTargetDesc/VEInstPrinter.cpp
llvm/lib/Target/VE/MCTargetDesc/VEInstPrinter.h
llvm/lib/Target/VE/VE.h
llvm/lib/Target/VE/VEAsmPrinter.cpp
llvm/lib/Target/VE/VEFrameLowering.cpp
llvm/lib/Target/VE/VEInstrInfo.td
llvm/test/CodeGen/VE/cast.ll
llvm/test/CodeGen/VE/div.ll
llvm/test/CodeGen/VE/fp_to_int.ll
llvm/test/CodeGen/VE/int_to_fp.ll
llvm/test/CodeGen/VE/rem.ll