Commit Graph

162 Commits

Author SHA1 Message Date
Aaron Enye Shi 235c6877c8 Revert "Use COMgr to read Kernel Args Metadata (#1006)"
This reverts commit 2c80975e9c.
2019-04-26 16:04:56 -04:00
Aaron Enye Shi acfa46bbbc Revert "Add COMGR relative path for build machines"
This reverts commit 6b3095f7cb.
2019-04-26 16:04:56 -04:00
Aaron Enye Shi 6b3095f7cb Add COMGR relative path for build machines 2019-04-23 17:16:26 -04:00
Aaron Enye Shi 2c80975e9c Use COMgr to read Kernel Args Metadata (#1006)
* Add CMAKE dep to amd_comgr

* Use COMGR for read_kernarg_metadata in COV2

* Do not assume kernargs exist

* Add proper metadata destroy cleanup

* Use a process function for easier destroy

* Remove old read_kernarg_metadata

* Clean up HCC, prints, names

* Use COMGR in CMAKE by default

* Move metadata lookup for keyword values into helper

* Remove C string usage for lookup_keyword_value

* Guard COMGR for non-NVCC path

* Add hip_hcc dependency on comgr package

* Add lifetime to metadata nodes

* Find COMGR config file for amd_comgr target

* Move set_active data earlier
2019-04-16 08:34:39 +05:30
eshcherb 045c6afa2c adding hip_prof_gen verbose log (#977)
* adding hip_prof_gen verbose log

* adding stderr fatal error

* adding no error exit by default

* adding hip_prof_str regeneration dependencies

* adding more informative messages

* fixing error mesage
2019-03-21 05:28:18 +00:00
eshcherb 1229750546 adding prof primitives generator (#967)
* adding prof primitives generator

* minor change, renaming

* minor cosmetic changes, comments correcting and dead code removing

* minor changes and renaming

* minor chane, fixing comments
2019-03-20 05:11:40 +00:00
eshcherb 7c3499198c roctracer-proto header find_path (#884) 2019-03-06 17:36:34 +05:30
Alex Voicu ed48847237 dlopen() fixes (#929)
* Initial attempt to switch over to internally linked state.

* Add missing CMake update.

* hipLaunchKernelGGLImpl must be inline as well. Ensure internal linkage.

* Ensure global retrieval uses internally linked state.

* Hide HC in the implementation. Minimise ADL woes.

* Strange software exists, and must be catered to.

* Use a less spammy mechanism for ensuring internal linkage / non-export.

* Remove leftover internal detail.
2019-03-06 17:31:44 +05:30
Yaxun Sam Liu 972ca06c4c Add __gnu_h2f_ieee and __gnu_f2h_ieee
The implementation is copied from HCC runtime.

For hcc it has no effect since apps can find them in either hcc runtime or HIP
runtime.

hip-clang needs it in HIP/HCC runtime so that HIP/HCC and HIP/VDI runtime are
swappable.
2019-02-21 12:48:28 -05:00
Maneesh Gupta 5bd2316535 Merge pull request #891 from aaronenyeshi/hip-clang-default
hipcc defaults to HIP-Clang if built with HIP-Clang
2019-02-07 05:58:38 +05:30
Aaron Enye Shi 869b3b6a10 Add HIP_RUNTIME for HCC or VDI 2019-02-01 22:30:30 +00:00
Aaron Enye Shi 63aad50098 hipcc defaults to HIP-Clang if built with HIP-Clang
Add HIP_COMPILER to hipConfig, so that HIP packages built with HIP_COMPILER for HIP-Clang will be known during runtime by hipcc. Also add default locations to check for llvm and device-libs.
2019-02-01 16:52:55 +00:00
Evgeny 2159e655d5 roctracer-proto pkg-config fix to includedir 2019-01-29 13:15:26 -06:00
Evgeny 6fd5946273 PROF_API pkgconfig roctracer-proto module lookup 2019-01-23 23:40:35 -06:00
Evgeny eb183d4e7b enabling PROF_API pkgconfig 2019-01-23 22:05:50 -06:00
Maneesh Gupta 3403527cfd Don't break cmake configure if roctracer headers not found
Change-Id: I35e49b52353ab24680836e397ab50136922f8641
2019-01-18 13:23:57 +05:30
Yaxun Sam Liu 988dcd1e4a Let hip-clang support --genco 2018-11-27 15:55:50 -05:00
Evgeny c37c1288db FATAL_ERRROR if Profiling API header not found 2018-11-22 21:51:20 -06:00
Evgeny 37dcb91eef fixing the adding of USE_PROF_API define only if the tracer header was found 2018-11-22 21:12:08 -06:00
Evgeny 084a68be63 adding activity prof layer 2018-11-13 15:33:26 +00:00
Aaron Enye Shi ba43d1ce1b Remove libhip_device.a static library
Move remaining function definitions from device_util.cpp to hip_runtime.h header. We can now remove the static library completely as device_util.cpp was the last file part of target hip::hip_device .
2018-10-25 19:52:35 +00:00
Aaron Enye Shi 73a5ea0f9f Create separate config files for hcc and clang
The state of HIP_COMPILER is not passing into config files, therefore config files cannot use if statements to determine dependency. For HIP-Clang, we should remove find_dependency(hcc), so we create separate config files depending on compiler path. This fixes issue in apps that uses hip-config.cmake.
2018-09-19 18:29:56 +00:00
Aaron Enye Shi 6e40ec653c Remove few hcc specific cmake for hip-clang 2018-08-15 21:53:20 +00:00
Aaron Enye Shi 7560956233 Enable HIP_COMPILER to choose HIP-Clang lib links 2018-08-01 20:37:46 +00:00
Aaron Enye Shi d39508b4fd Implement hip_ldg Functions into HIP header
Move all the function definitions for hip_ldg.cpp into hip_ldg.h header and enable for HIP clang path.
2018-07-05 20:38:46 +00:00
Aaron Enye Shi 175c87f2bf Implement hip_hc.ll into HIP headers
Move all __hip_hc_ir_* functions from hip_hc.ll into HIP header as inline asm. Remove hip_hc.ll and build dependencies from HIP.
2018-06-20 17:39:31 +00:00
Aaron Enye Shi ad5f1dcbf2 Implement device_functions.cpp into HIP headers
Move all Integer Intrinsics, device_functions.cpp definitions and HIP specific device functions into HIP headers. Implement the device functions using llvm_intrinsics and device-libs functions instead of calling hc::__* functions. Remove device_functions.cpp since everything is now defined in header.
2018-06-20 17:39:23 +00:00
Alex Voicu f2d7f112ab Re-sync with upstream. 2018-06-01 15:49:05 +01:00
Alex Voicu e03ca1a72e Re-sync with upstream. Add integer abs. 2018-05-31 16:38:00 +01:00
Alex Voicu 14e6a04387 Switch to using ROCDL directly, as opposed to via HC. Add missing bits. 2018-05-31 03:17:26 +01:00
Alex Voicu f2a86f3e1c Remove vestigial inline LLVMIR. 2018-05-24 12:46:14 +01:00
Alex Voicu ecefdd6541 Missing commit. 2018-05-23 17:57:47 +01:00
Maneesh Gupta 197cac144d Merge pull request #418 from pfultz2/host-device-targets
Add host and device targets
2018-05-22 06:33:56 +05:30
Siu Chi Chan 368affcea4 initial gfx906 support 2018-05-10 19:28:00 +00:00
Paul 56734306ed Add host and device targets 2018-04-24 14:04:24 -05:00
Aaron Enye Shi 1149f88413 Remove unsupported targets gfx801 and gfx802
These architectures are no longer supported. Should not compile for them.
2018-04-23 15:25:35 -04:00
Maneesh Gupta ebc52e5bc0 [cmake] Update target build dependencies
Change-Id: Ib1c34135c0d04f88daa695e7a90272225d7e64b0
2018-04-11 15:30:13 +05:30
Laurent Morichetti 323caee8d2 Add support for clang offload bundles and <<<>>> kernel launch. 2018-04-04 13:32:33 -07:00
Maneesh Gupta eee7fa6072 Merge pull request #363 from gargrahul/surface_object_api
Added surface object support
2018-03-09 11:50:30 +05:30
Alex Voicu fa0bff8f78 Update CMakeLists.txt 2018-03-01 16:06:09 +00:00
Rahul Garg 92283d24d0 Added surface object support 2018-02-26 11:59:03 +05:30
Alex Voicu 696f0595a3 Change directory name to match HIP lowercase style. 2018-02-22 13:15:10 +00:00
Alex Voicu 1563d53c92 Merge branch 'master' of https://github.com/ROCm-Developer-Tools/HIP into feature_purge_genco 2018-02-22 12:08:52 +00:00
Maneesh Gupta 6ef0c494d1 [build] Add clangformat target to cmake
- Added a new target "clangformat" which formats the code using the
  clang-format tool found in HCC package.
- Renamed target "static_check" to "cppcheck".
- Use find_program() macro to make the build system more robust.

Change-Id: Ifefbf36f23ff7ef27a870120d5b9170d0cc8aa52
2018-02-12 10:21:27 +05:30
Alex Voicu 09c704a2d0 Merge branch 'master' of https://github.com/ROCm-Developer-Tools/HIP into feature_purge_genco 2018-01-17 14:02:19 +00:00
Alex Voicu 863f08c6a6 Add Catecholamine (CA), a tool for breaking code objects out of fat binaries created via LPL. As with LPL, --help provides usage details. Fixed LPL's implementation of path_to_self which was a nasty infinite loop iff for whatever reason readlink would always fail, orthogonally to the string's size. Link against pthread for LPL, which uses call_once and once_flag (this could, under certain circumstances, yield an arcane "Unknown error=-1" exception. 2017-12-14 13:32:27 +00:00
Maneesh Gupta 379cbfedcf [cmake] Added target static_check for static code analysis
- Added static code analysis using cppcheck
- Fixed couple of warnings reported by cppcheck

Change-Id: Ie3b9b06e95ada322e7dc2ce3d6b91831e870198d
2017-12-14 12:16:44 +05:30
Alex Voicu bdd2d6d602 Add omitted changes in CMakeLists.txt. 2017-11-10 01:20:50 +00:00
Chris Kitching de8dcf0ed2 Use cmake's builtin mechanism for handling library locations
See [the documentation](https://cmake.org/cmake/help/v3.0/command/find_package.html)
for exactly how the search procedure works. If you want to use an
LLVM from a specific location, use CMAKE_PREFIX_PATH as normal.

No longer do we have a nonstandard HIPIFY_CLANG_LLVM_DIR variable
for people to learn about.
2017-10-27 19:39:40 +01:00
Chris Kitching 414a473d5c Use add_dependencies to avoid duplication of pkg_hip_base 2017-10-27 19:39:40 +01:00