[PATCH] D37698: Add target callback areMemOpsHaveSameBasePtr
Stanislav Mekhanoshin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 11 10:30:49 PDT 2017
rampitec created this revision.
Herald added subscribers: javed.absar, nhaehnle, arsenm.
MachineScheduler when clustering loads or stores checks if base
pointers point to the same memory. This check is done through
comparison of base registers of two memory instructions. This
works fine when instructions have separate offset operand. If
they require a full calculated pointer such instructions can
never be clustered according to such logic.
Implemented the new target callback providing an opportunity to
perform necessary more complicated checks in such case.
https://reviews.llvm.org/D37698
Files:
include/llvm/Target/TargetInstrInfo.h
lib/CodeGen/MachineScheduler.cpp
lib/Target/AMDGPU/SIInstrInfo.cpp
lib/Target/AMDGPU/SIInstrInfo.h
test/CodeGen/AMDGPU/add.i16.ll
test/CodeGen/AMDGPU/ctpop.ll
test/CodeGen/AMDGPU/fadd.f16.ll
test/CodeGen/AMDGPU/flat-load-clustering.mir
test/CodeGen/AMDGPU/si-triv-disjoint-mem-access.ll
test/CodeGen/AMDGPU/sub.i16.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D37698.114629.patch
Type: text/x-patch
Size: 16027 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170911/257f3220/attachment-0001.bin>
More information about the llvm-commits
mailing list