Skip to content
  • Jon Chesterfield's avatar
    [libomptarget][amdgpu] Implement dlopen of libhsa · 1a965706
    Jon Chesterfield authored
    AMDGPU plugin equivalent of D95155, build without HSA installed locally
    
    Compiles a new file, plugins/amdgpu/dynamic_hsa/hsa.cpp, to an object file that
    exposes the same symbols that the plugin presently uses from hsa. The object
    file contains dlopen of hsa and cached dlsym calls. Also provides header files
    corresponding to the subset that is used.
    
    This is behind a feature flag, LIBOMPTARGET_FORCE_DLOPEN_LIBHSA, default off.
    That allows developers to build against the dlopen/dlsym implementation, e.g.
    while testing this mode.
    
    Enabling by default will cause this plugin to build on a wider variety of
    machines than it does at present so may break some CI builds. That risk can
    be minimised by reviewing the header dependencies of the library and ensuring
    it doesn't use any libraries that are not already used by libomptarget.
    
    Separating the implementation from enabling by default in case the latter needs
    to be rolled back after wider CI results.
    
    Reviewed By: jdoerfert
    
    Differential Revision: https://reviews.llvm.org/D106559
    1a965706
Loading