GlobalISel: Consolidate load/store legalization
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Tue, 5 Feb 2019 00:26:12 +0000 (00:26 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Tue, 5 Feb 2019 00:26:12 +0000 (00:26 +0000)
commit7f09fd6b045da9fd62529fede180ac3e48a88305
tree8f92d36285915a37bd117ce8c0610a82f1a34a80
parentd4e37afe450ae1822d65223b297a4b518b9eb268
GlobalISel: Consolidate load/store legalization

The fewerElementsVectors implementation for load/stores
handles the scalar reduction case just as well, so drop
the redundant code in narrowScalar. This also introduces
support for narrowing irregular size breakdowns for
scalars.

llvm-svn: 353125
llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
llvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll
llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load.mir
llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store.mir
llvm/test/CodeGen/X86/GlobalISel/x86_64-fallback.ll