[SystemZ] Improve foldMemoryOperandImpl: vec->FP conversions
authorJonas Paulsson <paulsson@linux.vnet.ibm.com>
Wed, 18 Mar 2020 17:11:56 +0000 (18:11 +0100)
committerJonas Paulsson <paulsson@linux.vnet.ibm.com>
Tue, 12 May 2020 07:21:24 +0000 (09:21 +0200)
commit57feff93a82c7a7cf538b8a3e05e02ada2fbcae3
tree0460296658ebeb4a9680869ddf220283ae388c10
parent42c7a6d52ba052a195825e81668d88487b3f26cc
[SystemZ] Improve foldMemoryOperandImpl: vec->FP conversions

Use FP-mem instructions when folding reloads into single lane (W..) vector
instructions.

Only do this when all other operands of the instruction have already been
allocated to an FP (F0-F15) register.

Review: Ulrich Weigand

Differential Revision: https://reviews.llvm.org/D76705
llvm/lib/Target/SystemZ/SystemZInstrFP.td
llvm/lib/Target/SystemZ/SystemZInstrFormats.td
llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
llvm/lib/Target/SystemZ/SystemZInstrVector.td
llvm/test/CodeGen/SystemZ/foldmemop-vec-binops.mir [new file with mode: 0644]
llvm/test/CodeGen/SystemZ/foldmemop-vec-cc.mir [new file with mode: 0644]
llvm/test/CodeGen/SystemZ/foldmemop-vec-cmp.mir [new file with mode: 0644]
llvm/test/CodeGen/SystemZ/foldmemop-vec-fusedfp.mir [new file with mode: 0644]
llvm/test/CodeGen/SystemZ/foldmemop-vec-unary.mir [new file with mode: 0644]
llvm/test/CodeGen/SystemZ/int-cmp-56.mir