This is an archive of the discontinued LLVM Phabricator instance.

[Lowering] Support lowering of llvm.experimental.ptr.provenance.
AcceptedPublic

Authored by jeroen.dobbelaere on Aug 3 2021, 7:54 AM.

Details

Summary

Add support for lowering the llvm.experimental.ptr.provenance and optional ptr_provenance argument for load/store instructions.

For the llvm.experimental.ptr.provenance operand, this means following operand 0.
For the load/store instructions the ptr_provenance arguments is passed to the MachineMemOperand

Diff Detail

Event Timeline

jeroen.dobbelaere requested review of this revision.Aug 3 2021, 7:54 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 3 2021, 7:54 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 15 2022, 7:06 AM
jeroen.dobbelaere added a comment.EditedMay 5 2022, 11:50 PM

NOTE: this should not be done here. The ptr_provenance Value in D107354 must still be able to see these intrinsics.

jeroen.dobbelaere added a comment.EditedJun 14 2022, 4:55 AM

NOTE: this should not be done here. The ptr_provenance Value in D107354 must still be able to see these intrinsics.

Question: is 'IntrinsicLowering' used for codegen ? I only find it to be used for the interpreter. There it makes sense to handle the intrinsics.

jeroen.dobbelaere edited the summary of this revision. (Show Details)

Rebased to ffe262a198a9f9030991df6d3ddd812e74fa3523

Added support for passing ptr_provenance argument of load/store instructions to MachineMemOperand when lowering.

asbirlea accepted this revision.Apr 11 2023, 4:50 PM
This revision is now accepted and ready to land.Apr 11 2023, 4:50 PM