yxsamliu wrote:

@jhuber6 Re: concrete reproducer

A small reproducer is:

`clang++ -### -x hip --offload-device-only --target=x86_64-unknown-linux 
--offload-arch=gfx90a -fprofile-generate -nogpuinc -nogpulib test.hip`

For a driver-only lit test, the resource dir also needs fake 
`libclang_rt.profile.a` files so the driver gets past the runtime existence 
checks.

Before this PR, this device-only link path did not go through 
`clang-linker-wrapper`, so the wrapper did not see `-fprofile-generate` and 
could not add the normal device profile runtime handling.

With this PR, the same pipeline goes through `clang-linker-wrapper` with:

`--device-compiler=amdgcn-amd-amdhsa=-fprofile-generate`

The `--no-gpu-bundle-output` case still needs to return raw per-arch device 
output, so the PR has the wrapper emit a fatbin and then unbundles it back to 
the requested raw output form.

https://github.com/llvm/llvm-project/pull/211675
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to