| Issue |
182901
|
| Summary |
[clang][SPIRV] weak_odr symbols are not exported by spirv-link
|
| Labels |
clang
|
| Assignees |
sarnex
|
| Reporter |
adurang
|
llvm generates additional information for kernels by creating structs on the device side named ` xxxx_kernel_environment` which are created as `weak_odr protected` . When calling spirv-link this symbols become "internal" and not exported in the final ELF image. Thus, the RTL cannot find them when running the binary.
A possible solution to this issue is to pass the ` --create-library` flang to `spirv-link`.
A test that exhibits this problem is ` offload/test/offloading/info.c`
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs