Added CodeObjectVersion as a new field in KernelArgPool and
modified relevant constructors to populate it.
Details
- Reviewers
jdoerfert JonChesterfield jhuber6 yaxunl
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Fixed usage of CodeObjectVersion and ImplicitArgs size in the old plugin.
A separate patch will be required to support cov5 for the next gen plugin.
openmp/libomptarget/plugins/amdgpu/src/rtl.cpp | ||
---|---|---|
128 | Fixed in the new diff. kernargSizeIncludingImplicit() needs the CodeObjectVersion because size of ImplicitArgs in cov4 is 56 bytes whereas it is 256 bytes in cov5. | |
481 | As we do not support mixing of code object versions, the value remains the same for all. This field gets set during call to __tgt_rtl_load_binary_locked() and is later used as DeviceInfo().CodeObjectVersion. | |
1382 | I took the style that two other functions are using for looking up symbols and getting platform flags in this file. *.getHeader() seem to be the simplest way to get the header. |
I don't think the memory pool needs to know what format the elf is using