From 7dbc574a4b9336afefe019aa976a7c4edad698bc Mon Sep 17 00:00:00 2001 From: Maneesh Gupta Date: Fri, 4 Oct 2019 13:35:21 +0530 Subject: [PATCH] hipcc defaults to code object v3 (#1298) Change-Id: I272ec61090fa504d631fb54371a73dd6fd17a167 [ROCm/hip commit: d39a2a0749e4b3deffd2717dc8209d668d5f9871] --- projects/hip/bin/hipcc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/projects/hip/bin/hipcc b/projects/hip/bin/hipcc index c759802e2e..81f394102a 100755 --- a/projects/hip/bin/hipcc +++ b/projects/hip/bin/hipcc @@ -337,6 +337,7 @@ my $runCmd = 1; my $buildDeps = 0; my $linkType = 1; my $setLinkType = 0; +my $coFormatv3 = 1; my @options = (); my @inputs = (); @@ -456,6 +457,22 @@ foreach $arg (@ARGV) $swallowArg = 1; } + # code object format parsing + if ($trimarg eq '-mcode-object-v3') { + $coFormatv3 = 1; + # hip-clang already recognizes -mcode-object-v3, so we just pass it on + if ($HIP_PLATFORM eq 'hcc') { + $swallowArg = 1; + } + } + if ($trimarg eq '-mno-code-object-v3') { + $coFormatv3 = 0; + # hip-clang already recognizes -mno-code-object-v3, so we just pass it on + if ($HIP_PLATFORM eq 'hcc') { + $swallowArg = 1; + } + } + if (($arg =~ /--genco/) and $HIP_PLATFORM eq 'clang' ) { $arg = "--cuda-device-only"; } @@ -831,6 +848,12 @@ if($HIP_PLATFORM eq "hcc" or $HIP_PLATFORM eq "clang"){ } } +# hcc defaults to v2, so we need to convert to the appropriate flag +# hip-clang defaults to v3, so we don't need to do anything +if ($coFormatv3 and $HIP_PLATFORM eq 'hcc') { + $HIPLDFLAGS .= " -Wl,-hcc-cov3 "; +} + if ($hasC and $HIP_PLATFORM eq 'nvcc') { $HIPCXXFLAGS .= " -x cu"; }