[AMDGPU] Convert insert_vector_elt into set of selects
authorStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Mon, 19 Nov 2018 17:39:20 +0000 (17:39 +0000)
committerStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>
Mon, 19 Nov 2018 17:39:20 +0000 (17:39 +0000)
commit054f8101f11810600a862ef310209afd98b7f0df
tree347281f4939237d877010fb9c73e971ce6307f3d
parentfe034625df03494e2bc5ac86c3656b5856cb5089
[AMDGPU] Convert insert_vector_elt into set of selects

This allows to avoid scratch use or indirect VGPR addressing for
small vectors.

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

llvm-svn: 347231
llvm/lib/Target/AMDGPU/SIISelLowering.cpp
llvm/lib/Target/AMDGPU/SIISelLowering.h
llvm/test/CodeGen/AMDGPU/indirect-addressing-si-gfx9.ll
llvm/test/CodeGen/AMDGPU/indirect-addressing-si-noopt.ll
llvm/test/CodeGen/AMDGPU/indirect-addressing-si-pregfx9.ll
llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll [new file with mode: 0644]
llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
llvm/test/CodeGen/AMDGPU/movreld-bug.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-vector-to-vector.ll
llvm/test/CodeGen/AMDGPU/vector-extract-insert.ll