[PATCH] D155628: [OpenMP][OpenMPIRBuilder] Make outlined function parameters i64

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 19 08:20:38 PDT 2023


arsenm added a comment.

In D155628#4514892 <https://reviews.llvm.org/D155628#4514892>, @jsjodin wrote:

> In D155628#4512570 <https://reviews.llvm.org/D155628#4512570>, @jdoerfert wrote:
>
>> I would strongly recommend to make sure the arguments are 64 bit without i2p/p2i casts. This has all sorts of bad effects and it is a reason our clang kernels perform often poorly.
>
> If the size of a pointer is 64-bit can we use the pointers directly, unless pointers are 32-bit and then fall back on the i2p/p2i casts?

clang ABI lowering adds padding arguments and/or structs to account for this, for the 32-bit case it would emit something like { ptr, i32 }


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D155628/new/

https://reviews.llvm.org/D155628



More information about the llvm-commits mailing list