Skip to content

[HIPIFY][SWDEV-382258][feature] Introduce 1-to-N conditional matcher #782

@emankov

Description

@emankov

[Synopsis]

  • Currently, only 1-to-1 unconditional matchers are presented in hipify-clang

[ToDo]

  • If the signature of a particular API function changed or there are multiple APIs with the same name and different signatures (for C and C++, for instance), we need to map and further transform correspondingly to the needed HIP analogue (if presented)
  • If the needed HIP analogue is not presented (not yet implemented), throw an error or a warning
  • [Optionally] There might be an additional condition for matching to this or that HIP analogue, for instance:
    cuStreamGetCaptureInfo should be matched and transformed to hipStreamGetCaptureInfo if CUDA_VERSION < 12000, and to hipStreamGetCaptureInfo_v2 if CUDA_VERSION >= 12000; in the first scenario, the call of cuStreamGetCaptureInfo has the signature used before CUDA 12.0, in the second scenario, the call of cuStreamGetCaptureInfo has the different signature, changed with CUDA 12.0.

Metadata

Metadata

Assignees

Labels

featureFeature request or implementationrefactor

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions