[all-commits] [llvm/llvm-project] f19226: GlobalISel: Have load lowering handle some unalign...
Matt Arsenault via All-commits
all-commits at lists.llvm.org
Fri Jul 30 09:56:15 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f19226dda5aea6d677b0e52b309ef9c605178a51
https://github.com/llvm/llvm-project/commit/f19226dda5aea6d677b0e52b309ef9c605178a51
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2021-07-30 (Fri, 30 Jul 2021)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-global.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-zextload-global.mir
Log Message:
-----------
GlobalISel: Have load lowering handle some unaligned accesses
The code for splitting an unaligned access into 2 pieces is
essentially the same as for splitting a non-power-of-2 load for
scalars. It would be better to pick an optimal memory access size and
directly use it, but splitting in half is what the DAG does.
As-is this fixes handling of some unaligned sextload/zextloads for
AMDGPU. In the future this will help drop the ugly abuse of
narrowScalar to handle splitting unaligned accesses.
More information about the All-commits
mailing list