diff --git a/hipamd/bin/hipcc b/hipamd/bin/hipcc index 33041d240f..92ac35e049 100755 --- a/hipamd/bin/hipcc +++ b/hipamd/bin/hipcc @@ -60,6 +60,9 @@ if ($HIP_PLATFORM eq "hcc") { $ROCM_PATH=$ENV{'ROCM_PATH'}; $ROCM_PATH="/opt/rocm" unless defined $ROCM_PATH; + $ROCM_TARGET=$ENV{'ROCM_TARGET'}; + $ROCM_TARGET="fiji" unless defined $ROCM_TARGET; + # HCC* may be used to compile src/hip_hcc.o (and also feed the HIPCXXFLAGS below) $HCC = "$HCC_HOME/bin/hcc"; $HCCFLAGS = "-hc -I$HCC_HOME/include "; @@ -78,6 +81,14 @@ if ($HIP_PLATFORM eq "hcc") { $HIPLDFLAGS .= " -lc++abi"; $HIPLDFLAGS .= " -L$HSA_PATH/lib -L$ROCM_PATH/lib -lhsa-runtime64 -lhc_am -lhsakmt"; + # Handle ROCm target platform + if ($ROCM_TARGET eq "fiji") { + $HIPLDFLAGS .= " -amdgpu-target=AMD:AMDGPU:8:0:3"; + } + if ($ROCM_TARGET eq "hawaii") { + $HIPLDFLAGS .= " -amdgpu-target=AMD:AMDGPU:7:0:1"; + } + # Add trace marker library: # TODO - once we cleanly separate the HIP API headers from HIP library headers this logic should move to CMakebuild option - apps do not need to see the marker library. $marker_inc_path = "$marker_path/include";