[PATCH] D34963: [AArch64][Falkor] Avoid HW prefetcher tag collisions (step 1)
Geoff Berry via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 3 13:33:08 PDT 2017
gberry created this revision.
Herald added subscribers: kristof.beyls, javed.absar, mgorny, rengolin, aemerson.
This patch is the first step in reducing HW prefetcher instruction tag
collisions in inner loops for Falkor. It adds a pass that annotates IR
loads with metadata to indicate that they are known to be strided loads,
and adds a target lowering hook that translates this metadata to a
target-specific MachineMemOperand flag.
A follow on change will use this MachineMemOperand flag to re-write
instructions to reduce tag collisions.
https://reviews.llvm.org/D34963
Files:
lib/Target/AArch64/AArch64.h
lib/Target/AArch64/AArch64FalkorHWPFFix.cpp
lib/Target/AArch64/AArch64ISelLowering.cpp
lib/Target/AArch64/AArch64ISelLowering.h
lib/Target/AArch64/AArch64InstrInfo.cpp
lib/Target/AArch64/AArch64InstrInfo.h
lib/Target/AArch64/AArch64TargetMachine.cpp
lib/Target/AArch64/CMakeLists.txt
test/CodeGen/AArch64/falkor-hwpf.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D34963.105115.patch
Type: text/x-patch
Size: 13843 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170703/b51496fc/attachment.bin>
More information about the llvm-commits
mailing list