Commit Graph

291 Commits

Author SHA1 Message Date
Evgeny Mankov d883d24616 [HIPIFY][bash] Make 'find' sorted by extension (#1231)
+ Source files are the first to go. It is needed for in-place hipification in order to avoid errors with included but already hipified header files.
+ More extensions support for batch processing.

[ROCm/hip commit: b1fad7915b]
2019-07-17 07:28:54 +00:00
Yaxun (Sam) Liu 296d1606f2 Add amdgpu targets gfx1010 and gfx1012 (#1211)
[ROCm/hip commit: 2b5ff1678a]
2019-07-12 03:13:35 +00:00
Michael LIAO 49fce7ba8a [hipcc] Revise include path calculation.
- Once HIP_VDI_HOME is defined but HIP_CLANG_INCLUDE_PATH is not,
  calculate it directly without HIP_CLANG_PATH is defined or not;
  Otherwise, we may leave HIP_CLANG_INCLUDE_PATH undefined, if clang is
  not installed following the official way (so far, HIP-Clang breaks
  that), we may leave HIP_CLANG_INCLUDE_PATH undefined before its uses.


[ROCm/hip commit: e32940357f]
2019-06-14 13:35:00 -04:00
Yaxun Sam Liu d1ffde1c66 Fix default HIP_VDI_HOME
There is soft link /opt/rocm/bin/.hipVersion, therefore when hipcc is executed
as /opt/rocm/bin/hipcc, it will set HIP_VDI_HOME to /opt/rocm, which is
incorrect. Check ../lib/bitcode instead to identify HIP_VDI_HOME.


[ROCm/hip commit: 71f6bf4e67]
2019-05-31 23:58:59 -04:00
Konstantin Pyzhov 8b61e3c467 Fixed setting HIP_CLANG_PATH on Windows.
[ROCm/hip commit: ee1d0efdf6]
2019-05-28 09:38:17 -04:00
Yaxun (Sam) Liu e403db242a Fix hipcc for hip-clang. (#1143)
* Fix hipcc for hip-clang.

If there is -g, do not add -O3 by default.
If HIP_VDI_HOME is not set, set HIP_VDI_HOME based on hipcc directory for HIP/VDI runtime.
For HIP/VDI runtime, set HIP_CLANG_PATH and DEVICE_LIB_PATH based on HIP_VDI_HOME only if they exist.

This allows using HIP/VDI runtime with hip-clang installed at /opt/rocm/llvm and device lib installed
at /opt/rocm/lib.

* Fix HIP_VDI_HOME for hipcc called from /opt/rocm/bin


[ROCm/hip commit: e17f94e080]
2019-05-28 09:40:34 +05:30
Maneesh Gupta da977db4df Merge pull request #1136 from yxsamliu/fix-rdc
Fix device lib path for hip-clang.

[ROCm/hip commit: 43e2c9d361]
2019-05-24 14:16:30 +05:30
Yaxun Sam Liu 320676a2e3 Fix device lib path for hip-clang.
We now always need device lib path when compiling and not need it at linking.


[ROCm/hip commit: bba85f0e24]
2019-05-23 15:11:02 -04:00
Aaron Enye Shi bce37a03b8 Fix hipcc exit code when failing
[ROCm/hip commit: 20ea7e9d26]
2019-05-16 20:36:58 +00:00
Michael LIAO 448be14118 [hipcc] Repace --rpath with --rpath-link
- With `--rpath`, app's RUNPATH is set to the temporary library path
  during build. Instead, `--rpath-link` should be used to leave RUNPATH
  untouched. User should set LD_LIBRARY_PATH or system ld.so.conf to
  proper setting.


[ROCm/hip commit: 7f8b80103d]
2019-04-29 16:01:16 -04:00
Aaron Enye Shi 62e96cb4cf Revert "Use COMgr to read Kernel Args Metadata (#1006)"
This reverts commit 882006555b.


[ROCm/hip commit: a3d118eaa8]
2019-04-26 16:04:56 -04:00
Evgeny Mankov d8f4eff1ef [HIPIFY][perl][fix][258] Memory fence device functions are supported now
[ROCm/hip commit: abd1c53cf8]
2019-04-25 13:27:30 +03:00
Evgeny Mankov a2b6b1e7e9 [HIPIFY][hipify-perl] Formatting
[ROCm/hip commit: defc6f8155]
2019-04-23 17:55:47 +03:00
Aaron Enye Shi 882006555b 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


[ROCm/hip commit: 8a548bf40b]
2019-04-16 08:34:39 +05:30
Yaxun (Sam) Liu cc4acbdd08 hip-clang: fix hipcc options
Use -O3 for default optimization level.
Fix --hip-device-lib-path for warnings about unused option.


[ROCm/hip commit: a31036ab74]
2019-04-09 22:31:13 -04:00
Yaxun (Sam) Liu 0f62034e00 hip-clang: add include path for hsa headers
[ROCm/hip commit: c0e0ea9a12]
2019-04-09 15:01:50 -04:00
Anthony Cowley b00a98f27a hipify: translate cudaErrorInvalidSymbol
[ROCm/hip commit: e9b1881c60]
2019-04-02 08:54:37 -04:00
Yaxun Sam Liu 8d6e48820f Change HIP dll name to amdhip64.dll on Windows
[ROCm/hip commit: e2bf34cd5e]
2019-03-19 16:27:18 -04:00
Maneesh Gupta 2264e69da3 Merge pull request #936 from mangupta/swdev-174923
[hipconfig] Update HIP_PLATFORM detection logic

[ROCm/hip commit: 2d67bc5e9c]
2019-03-06 06:08:11 +05:30
Yaxun Sam Liu d9f59b18f8 Revert "hipcc should consume -mcode-object-v3 flag"
This reverts commit 1a8b50e63c.


[ROCm/hip commit: e8556388f9]
2019-02-28 11:21:47 -05:00
Yaxun Sam Liu e748fd2ae0 Revert "Change code-object flag to only HIP-Clang"
This reverts commit 17a853c277.


[ROCm/hip commit: 1bd8d24278]
2019-02-28 11:20:04 -05:00
Yaxun Sam Liu f46d2a3010 Revert "Consume the code obj args to prevent duplicates"
This reverts commit b19e4b5b63.


[ROCm/hip commit: 737972d31c]
2019-02-28 11:19:35 -05:00
Maneesh Gupta 55da014b79 [hipcofig] Update HIP_PLATFORM detection logic
HIP_PLATFORM detection logic relied on finding a working KFD. If it was
found, the platform was set as hcc else as nvcc.
However this logic is flawed since it is possible for the development
system to only have the user mode bits to build HIP application code.
Hence the better logic is to rely on finding a suitable compiler.
The new logic is as follows:
- look for a working HCC. If found, platform is set as hcc.
- else look for a working NVCC. If found, platform is set as nvcc.
- else the platform defaults to hcc for now.

Change-Id: Ifcc42c29a19f722153d5c23c55f1a8765dceaf6b


[ROCm/hip commit: 8b25f7b4cf]
2019-02-27 14:10:21 +05:30
Aaron Enye Shi b19e4b5b63 Consume the code obj args to prevent duplicates
[ROCm/hip commit: 2cd34f3c01]
2019-02-19 17:02:27 +00:00
Maneesh Gupta 7094c2d28d Initialize HIP_LIB_PATH on hcc path
Change-Id: I8f392fffcd6a3714c20cb17e876dbaad999c33a0


[ROCm/hip commit: c8579ead67]
2019-02-13 09:57:21 +05:30
Maneesh Gupta 4441aff847 Merge pull request #910 from aaronenyeshi/hip-code-obj-v3-passing
hipcc should consume -mcode-object-v3 flag

[ROCm/hip commit: d91bbf881c]
2019-02-13 08:58:19 +05:30
Aaron Enye Shi 17a853c277 Change code-object flag to only HIP-Clang
[ROCm/hip commit: 1c6365fbe7]
2019-02-11 17:18:12 +00:00
Maneesh Gupta 9ab6e7b7f6 Merge pull request #911 from lmoriche/hip_clang
Allow HIP_LIB_PATH to be overriden at the command line. Use HIP_LIB_P…

[ROCm/hip commit: 31c4a0dff1]
2019-02-11 11:26:39 +05:30
Maneesh Gupta 664796494d Merge pull request #903 from yxsamliu/win2
Fix hipcc and hip_vector_types.h for windows

[ROCm/hip commit: 61a8947d1c]
2019-02-11 11:24:03 +05:30
Laurent Morichetti 1cba0db52a Allow HIP_LIB_PATH to be overriden at the command line. Use HIP_LIB_PATH for rpath instead of HIP_PATH/lib
[ROCm/hip commit: 4eaf4b7c0a]
2019-02-08 13:50:13 -08:00
Aaron Enye Shi 1a8b50e63c hipcc should consume -mcode-object-v3 flag
[ROCm/hip commit: eb33507774]
2019-02-08 18:29:14 +00:00
Aaron Enye Shi 3e72d98209 Add hipInfo path for VDI build
[ROCm/hip commit: 3ad75e8d14]
2019-02-07 22:05:14 +00:00
Yaxun Sam Liu ecfc886193 Fix hipcc and hip_vector_types.h for windows
Disable linux specific compilation and linking options for windows.

In hip_vector_types.h, hip-clang needs HIP's own implementation for vector types even
on windows. MSVC specific implementation is for building runtime itself, which is compiled
by MSVC.


[ROCm/hip commit: a474dc7579]
2019-02-07 11:07:50 -05:00
Maneesh Gupta bbde243ed9 Merge pull request #898 from yxsamliu/windows
Add windows specific compilation options

[ROCm/hip commit: baea9f64e7]
2019-02-07 06:00:24 +05:30
Maneesh Gupta 4002165610 Merge pull request #894 from davidrohr/PR
Use -isystem instead of -I to suppress warnings in HIP headers

[ROCm/hip commit: e3d85e9ecc]
2019-02-07 05:58:47 +05:30
Maneesh Gupta 59a0ae6e13 Merge pull request #891 from aaronenyeshi/hip-clang-default
hipcc defaults to HIP-Clang if built with HIP-Clang

[ROCm/hip commit: 4ff12f958c]
2019-02-07 05:58:38 +05:30
Yaxun Sam Liu df3b7c22a4 Add windows specific compilation options
[ROCm/hip commit: 52df98a5d1]
2019-02-05 15:31:20 -05:00
David Rohr f20cd64d6a Use -isystem instead of -I to suppress warnings in HIP headers
[ROCm/hip commit: e04e391f3a]
2019-02-04 15:07:06 +01:00
Aaron Enye Shi f051cd1b71 Add HIP_RUNTIME for HCC or VDI
[ROCm/hip commit: 479d2d093f]
2019-02-01 22:30:30 +00:00
Aaron Enye Shi bb14376f50 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.


[ROCm/hip commit: 489cef167f]
2019-02-01 16:52:55 +00:00
Stanley Tsang 4d7b8ce2d6 Adding support in the hipify-perl tool for the HIP_SYMBOL macro, which is required for hip API calls involving a device symbol. Added more explicit mention of the HIP_SYMBOL macro in the porting guide.
[ROCm/hip commit: 6531262126]
2018-12-19 12:21:02 -05:00
Maneesh Gupta 36d29ab65c Merge pull request #776 from yxsamliu/fix-vdi-path
Let hipcc handle HIP_VDI_HOME without x86_64

[ROCm/hip commit: 491caacff1]
2018-11-28 09:33:03 +05:30
Yaxun Sam Liu 95802a836b Let hip-clang support --genco
[ROCm/hip commit: 450f093231]
2018-11-27 15:55:50 -05:00
Yaxun Sam Liu f2c2af12b2 Let hipcc handle HIP_VDI_HOME without x86_64
[ROCm/hip commit: 9d46966a59]
2018-11-26 17:00:37 -05:00
Michael Kuron c35dfb71d5 Merge branch 'master' into getsymboladdress
[ROCm/hip commit: 8610128c3e]
2018-11-20 12:03:22 +01:00
Yaxun Sam Liu a7f7a01513 Let hipcc handle clang-offload-bundler file in obj format for hip-clang
[ROCm/hip commit: 3d51a1fb01]
2018-11-08 16:50:34 -05:00
Michael Kuron d30c49f6cc hipify-perl: add hipGetSymbolAddress and hipGetSymbolSize
[ROCm/hip commit: 509b29594a]
2018-11-06 12:02:21 +01:00
Maneesh Gupta ac071f5390 Merge pull request #714 from aaronenyeshi/remove-static-hip-device
Remove libhip_device.a static library

[ROCm/hip commit: 0b86b421c1]
2018-10-31 14:08:29 +05:30
Aaron Enye Shi 5bbd632888 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 .


[ROCm/hip commit: 817b27d530]
2018-10-25 19:52:35 +00:00
Yaxun Sam Liu a5aa02c723 Let hipcc handle gfx906 for hip-clang
[ROCm/hip commit: 283fb42604]
2018-10-21 10:04:30 -04:00