This reverts commit b01fb5d72f.
Rework to support old cmake in order to fix mathlibs' failure.
Change-Id: I605fc633ba28df4fca95ceee83671600dd3f0b72
[ROCm/clr commit: 53b3c8a3fb]
HSA signal callback order is undefined. Make sure start event is
also done before calculating the elapsed time.
Change-Id: Ic69bfe336b20cd62ef35194261a5d0d234bc65ce
[ROCm/clr commit: 910d8bdfde]
Add the CMake support for generating the hiprtc-builtins
library. Replaces the previous execution of shell script.
For backwards compatibility, link hiprtc pre-processed
object to amdhip64, and support versioning in name.
Add libcmt.lib to Windows link step, due to manually
generated .obj from llvm-mc.
Change-Id: I267be3cf4b241840b35f7f27a0b8659530108b0e
[ROCm/clr commit: c42308e2e5]
In file included from /extra/lmoriche/hip-vdi/hip/rocclr/hip_internal.hpp:25,
from /extra/lmoriche/hip-vdi/hip/rocclr/hip_hmm.cpp:22:
/extra/lmoriche/hip-vdi/hip/rocclr/hip_prof_api.h: In constructor ‘api_callbacks_table_t::api_callbacks_table_t()’:
/extra/lmoriche/hip-vdi/hip/rocclr/hip_prof_api.h:72:59: warning: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct api_callbacks_table_t::hip_cb_table_t’ with no trivial copy-assignment; use value-initialization instead [-Wclass-memaccess]
72 | memset(&callbacks_table_, 0, sizeof(callbacks_table_));
| ^
/extra/lmoriche/hip-vdi/hip/rocclr/hip_prof_api.h:67:10: note: ‘struct api_callbacks_table_t::hip_cb_table_t’ declared here
67 | struct hip_cb_table_t {
| ^~~~~~~~~~~~~~
Address the above warning by providing default initialization of the
api_callbacks_table_t::hip_cb_table_t class members.
Change-Id: I69ea7c390c28cf3f8aec57f23566d6a3061a0365
[ROCm/clr commit: 0f7a47a95f]
There is no OUTPUT_FILE option for add_custom_command (it is an option
for execute_process). Instead, redirect stdout to the output file.
Change-Id: Ic649bc6c4f709c3c42166500a72fce5014690a47
[ROCm/clr commit: f3a54f0823]
Instead of using inline asm, use clang builtins
for llvm intrinsics.
Change-Id: I30287f5a8de035ccd7e48d10e559a8a2e1d389f7
[ROCm/clr commit: 3fa21c1d49]
Add a hip::Stream::destroyAllStreams static function to destroy all streams
Also call MemObjMap::Purge
Change-Id: I6ee7e3f26ab1f1870a9271c65e99fb818134482b
[ROCm/clr commit: bea4fa8700]
Current packaging assumes that HIP runtime will always be installed in
/opt/rocm/lib. This is false to assume, because some distros like CentOS
will use the lib64 directory instead of lib. Relying on CMake to choose
the library directory for us will default in that case to lib64. Hence
there will be a mismatch between where HIP is installed and where CMake
thinks it is.
Change-Id: I46e405b25bda987e74b095fcb41319f8a504ae41
[ROCm/clr commit: 52ff66f4fc]
Check GPU signal status for event before falling into CPU command
status validation
Change-Id: I66f15752d7dca550c0fa1a2252ec5a63817391c3
[ROCm/clr commit: dd8265fc87]
Currently build is only passing because amdhip64 is being built with
headers from /opt/rocm/include. It should be using the headers from
the hipamd project.
Change-Id: I27cb64b460547ef281d368322afac376fa49db51
[ROCm/clr commit: 37be0e449a]
Remove extra -isystem causing --cuda-device-only flag
to be dropped. Fix missing __hipRTC_header_size symbol.
Add macros which were consumed during pre-processor
generation. Add INT_MAX and CHAR_BIT macros used in
HIP headers.
Change-Id: Id5143e3c8a2b1e7c78658ba84d5ab3b55ac1fa72
[ROCm/clr commit: 7c8e210c26]
CMake doesn't handle linker export files in a general way well. On
Windows it is able to recognize a .def file and pass it to the linker.
Unfortunately it cannot do the same thing on Linux, so we have to
manually specify it.
Note that CMake can't recognize the current Windows export file due to
the .in suffix, hence why the amdhip.def file is being added. The
hip_hcc.def.in file will be removed later, as the Makefile build still
uses it.
Change-Id: Id3e4645c95959e13f50efd88bc43f3a1d3e50d58
[ROCm/clr commit: e4e9110f97]
Add coarse grain memory extension. The new advice will allow HMM
to disable cache coherency policy to improve performance
Change-Id: I3c792d6a96896b983a7ffccddaa0ded06d183212
[ROCm/clr commit: 2b3a4e711b]
HIP exports the runtime target as amdhip64. This target was recently
renamed to amdhip. It is unclear as to who uses this target, as HIP
clients need to use the device/host targets instead, but we still need
to support it for backwards compatability.
Change-Id: I68b9798ab967420e0642d50621d3c8b577a05435
[ROCm/clr commit: e037632fbd]
HIP only has a dependency on ROCclr at build time. When exporting HIP,
ROCClr is already embedded into the shared/static library. There is no
reason to search for it.
Change-Id: I8d7e8e58164e5585a1dfc9c998ecf02ca42d8aac
[ROCm/clr commit: 815e8dd2a3]
Don't install HIP source code.
Correctly install the HIP shared library based on platform. On Linux,
it will be installed to lib/, but on Windows it will be installed to
bin/. CMake will handle this for us.
Change-Id: I00cc074ad8e13b1b953b21444f0c2b5f50dc03c0
[ROCm/clr commit: 60e9b25650]