[Openmp-commits] [PATCH] D95274: [libomptarget][cuda] Call v2 functions explicitly

Jon Chesterfield via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Mon Jan 25 08:36:50 PST 2021


JonChesterfield added a comment.

In D95274#2520128 <https://reviews.llvm.org/D95274#2520128>, @jdoerfert wrote:

> This means dyn_cuda won't work for this version (and others I assume). We might need to look for both symbols in dyn_cuda, wdyt Jon?

Based on the macro renaming used to patch application code to work with either, it seems the calling conventions are unchanged.

If so, logic that looks up foo_v2 first, and then tries foo second, and only fails if both are missing seems valid.

The clean way to do that is probably:

- rtl.cpp calls cuMemcpyDtoHAsync
- dynamic_cuda/cuda.h does not have a macro that replaces that with cuMemcpyDtoHAsync_v2
- dynamic_cuda/cuda.cpp implements cuMemcpyDtoHAsync as a call to a function pointer which is initialised with cuMemcpyDtoHAsync_v2 or cuMemcpyDtoHAsync


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D95274



More information about the Openmp-commits mailing list