[all-commits] [llvm/llvm-project] dc3dba: [Intrinsics][AArch64] Add intrinsic to mask off al...
Sam Tebbs via All-commits
all-commits at lists.llvm.org
Mon Nov 25 02:04:52 PST 2024
Branch: refs/heads/users/SamTebbs33/alias-intrinsic
Home: https://github.com/llvm/llvm-project
Commit: dc3dba57e8cd76191ba03270d512f9931d4f4600
https://github.com/llvm/llvm-project/commit/dc3dba57e8cd76191ba03270d512f9931d4f4600
Author: Sam Tebbs <samuel.tebbs at arm.com>
Date: 2024-11-20 (Wed, 20 Nov 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
A llvm/test/CodeGen/AArch64/alias_mask.ll
A llvm/test/CodeGen/AArch64/alias_mask_scalable.ll
R llvm/test/CodeGen/AArch64/whilewr.ll
Log Message:
-----------
[Intrinsics][AArch64] Add intrinsic to mask off aliasing vector lanes
It can be unsafe to load a vector from an address and write a vector to
an address if those two addresses have overlapping lanes within a
vectorised loop iteration.
This PR adds an intrinsic designed to create a mask with lanes disabled
if they overlap between the two pointer arguments, so that only safe
lanes are loaded, operated on and stored.
Along with the two pointer parameters, the intrinsic also takes an
immediate that represents the size in bytes of the vector element
types, as well as an immediate i1 that is true if there is a write
after-read-hazard or false if there is a read-after-write hazard.
This will be used by #100579 and replaces the existing lowering for
whilewr since that isn't needed now we have the intrinsic.
Commit: e984b6120792f90ef00cd9ac23fde16adee73a5a
https://github.com/llvm/llvm-project/commit/e984b6120792f90ef00cd9ac23fde16adee73a5a
Author: Samuel Tebbs <samuel.tebbs at arm.com>
Date: 2024-11-21 (Thu, 21 Nov 2024)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
Fix intrinsic signature in docs
Commit: 2ea522b993b1f835e519ed51ac6f167556fc3772
https://github.com/llvm/llvm-project/commit/2ea522b993b1f835e519ed51ac6f167556fc3772
Author: Samuel Tebbs <samuel.tebbs at arm.com>
Date: 2024-11-21 (Thu, 21 Nov 2024)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/test/CodeGen/AArch64/alias_mask.ll
M llvm/test/CodeGen/AArch64/alias_mask_scalable.ll
Log Message:
-----------
Add -o - to test run lines
Commit: 4c4ab8aeed1b4fd66a90334dfcd889481f7e35b6
https://github.com/llvm/llvm-project/commit/4c4ab8aeed1b4fd66a90334dfcd889481f7e35b6
Author: Samuel Tebbs <samuel.tebbs at arm.com>
Date: 2024-11-21 (Thu, 21 Nov 2024)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
Log Message:
-----------
Format
Compare: https://github.com/llvm/llvm-project/compare/d3e07beaf383...4c4ab8aeed1b
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list